版本发布与回滚
大约 2 分钟部署运维开发指南
发布单元
宿主、AI 版本资源和注册表分别发布。AI 发版新增版本目录,注册表决定生效版本;回滚通过切回已保留版本完成,宿主无需因每次 AI 发版重新构建。
一、注册表条目
{
"code":"ai",
"name":"大模型平台",
"routePrefix":"/ai",
"version":"2.0.0",
"entry":"/micro/ai/releases/2.0.0/mf-manifest.json",
"enabled":true,
"sort":3,
"config":{}
}整份注册表还包含 schema、contract 与 remotes。entry 使用同源路径;契约 major 与宿主一致,实际共享依赖通过兼容矩阵校验。
二、分步发布
deploy/saber.sh remote ai ../Saber-AI
deploy/saber.sh check ai 2.0.0
deploy/saber.sh switch ai 2.0.0
deploy/saber.sh registry先检查新版本可访问,再切换注册表并下发。release ai ../Saber-AI 封装相同流程,在最终切换前提供终端确认。
两种部署形态
原生 Nginx 需将注册表下发到站点根目录;Docker 若直接挂载该环境注册表,修改后使用挂载文件生效。两种方式均以线上 /remotes.json 为准核对。
三、回滚与下线
将注册表切回已经发布的上一版本,再下发:
deploy/saber.sh switch ai <上一版本号>
deploy/saber.sh registry临时下线使用 switch ai --disable;重新启用使用 --enable。旧版本目录保留,供回滚和仍在使用旧页面的浏览器加载资源。
四、发布记录
记录目标环境、时间、宿主版本、AI 版本、buildId、契约版本与注册表变更。核对菜单打开、详情刷新、流式输出、分享入口与关键业务结果。
前端版本回滚只切换静态资源,不恢复数据库或业务配置。涉及数据结构的变更,另行制定数据变更与回退方案。
