在线更新
管理员可分别检查、安装或回滚 Web 界面与兼容的后端服务版本。
功能边界
在线更新页将 Web 界面资源与后端服务分开管理。两者都有独立的版本、校验、切换和回滚状态。
- 仅管理员可用:普通用户不会看到入口,也不能调用安装或回滚操作。
- 仅 Web 端可用:iOS、Android 和车机客户端不提供此入口。
- Web 界面更新:适用于国内版飞牛 FPK 与已启用该能力的 Docker 部署。
- 后端服务更新:仅适用于国内版飞牛 FPK,并且安装、回滚只允许从飞牛统一网关入口执行。
- 不替代完整升级:不会更新 supervisor、数据库 schema、FFmpeg、FPK、Docker 镜像或移动端 App。需要数据库迁移或 supervisor 升级时仍需安装完整 FPK。
入口
管理员登录 Web 端后,进入 个人中心 -> 在线更新。
页面分为 前端 与 后端服务 两个标签。未启用对应能力时会显示提示。国际版 FPK 与本地开发环境不提供在线安装能力。
后端服务状态可从普通端口查看,但检查、安装和回滚必须通过飞牛统一网关,并由飞牛管理员身份执行。
前端更新
页面会显示:
- 内置版本:随当前 FPK 或 Docker 镜像提供的 Web 界面版本。
- 当前版本:浏览器当前使用的界面版本,并标明来自内置资源还是在线资源。
- 可用版本:更新源提供的最新 Web 界面版本。
- 下载大小:当前可用更新包的大小。
- 后端兼容性:可用版本是否与当前 Rust 后端兼容。
不兼容的 Web 界面版本不能安装。
检查与安装
- 点击 检查更新 获取最新版本与兼容性信息。
- 确认版本兼容后,点击 安装更新。
- 安装成功后点击 刷新界面,让浏览器加载新的 Web 界面资源。
安装只切换 Web 界面资源,不会清除书库、账号、播放进度或数据库。安装失败时继续使用当前有效版本。
回滚
存在可回滚版本时,页面会显示 回滚到 vX.X.X。确认后只回滚 Web 界面资源,完成后需要刷新界面。
发行物内置的 Web 界面始终保留为基础版本;在线资源不可用或不兼容时,系统可以继续使用内置界面。Web 界面回滚不等同于后端服务、数据库、FPK 或 Docker 镜像回滚。
后端服务更新
后端服务由 FPK 内固定的监督服务管理。监督服务持有对外端口和飞牛网关 Socket,Rust API 作为仅监听本机回环端口的 worker 运行。
页面显示当前后端版本、可用版本、下载大小、监督服务版本、运行状态、可回滚版本和自动兜底状态。
检查与安装
- 从飞牛统一网关打开应用,进入 后端服务 标签。
- 点击 检查更新。系统只接受固定 HTTPS 发布目录中的签名清单。
- 点击 安装更新 后,系统校验架构、大小、SHA-256、Ed25519 签名、监督服务版本和数据库 schema 兼容范围。
- 候选 worker 在独立的本机端口启动,连续三次 readiness 检查通过后才切换新请求。
候选下载、启动或 readiness 失败时,当前 worker 继续服务,不改变当前版本。在线 worker 每次启动前都会重新校验磁盘文件和签名。
自动兜底与回滚
当前在线 worker 在 60 秒内连续两次启动失败或崩溃时,监督服务自动切回声明兼容当前 schema 的上一版本;上一版本不可用时恢复 FPK 内置 worker。监督服务自身保持运行并提供恢复状态页。
声明禁止自动回滚的版本不会被监督服务擅自切换到旧二进制。手工回滚同样先把目标版本作为候选完成校验和 readiness,再切换流量。
后端在线更新不执行数据库迁移。需要新增或变更数据库 schema 时,必须安装完整 FPK。
常见提示
- 当前发行环境未启用前端在线更新:当前部署没有启用此能力,请继续通过 FPK、Docker 镜像或正式安装包升级。
- 后端不兼容:可用的 Web 界面版本要求更高或不同的后端版本,不能安装。
- 安装或回滚失败:当前有效界面不会被替换;可稍后重试或继续使用现有版本。
- 仅允许飞牛统一网关管理员:当前通过普通端口进入,只能查看后端状态;请从飞牛桌面应用入口打开。
- 候选版本验证失败:候选没有通过签名、完整性、兼容性或 readiness 检查,当前后端保持不变。
- 后端服务正在恢复:监督服务仍在运行,正在重启当前 worker 或切换到兼容的兜底版本。
