版本回滚
Zeabur 会保留每次部署的记录,让你在新部署出现问题时,可以还原至任何先前成功的版本。
还原的运作方式
每次部署服务时,Zeabur 都会保留该部署的构建记录。这些记录会被保留,让你可以恢复到先前的版本。
当你触发还原时:
- Zeabur 会使用所选先前版本创建一个新部署。
- 新部署会经过标准的健康检查流程。
- 健康检查通过后,流量会路由到还原后的版本。
- 失败的部署仍会保留在部署历史记录中供参考。
由于还原遵循相同的部署流程,因此同样享有零停机的特性——在还原版本确认健康之前,旧的(有问题的)部署会继续处理流量。
从仪表板进行还原
还原服务的步骤:
- 在 Zeabur 仪表板中打开你的服务。
- 前往 Deployments 分页。
- 在部署历史记录中找到你要恢复的部署。
- 点击该部署上的 Rollback。
- Zeabur 会根据所选的快照创建新的部署。
💡
还原会在历史记录中创建一个新的部署项目。它不会删除或修改任何先前的部署。
依服务类型的还原方式
Git 部署的服务
对于从 Git 仓库部署的服务,你有两个选项:
- 仪表板还原 — 使用上述方式恢复到先前的构建快照。
- Git revert — 将 revert commit 推送到你的仓库。Zeabur 会检测到新的 commit 并触发全新构建,通过正常的 CI/CD 流程有效地还原你的代码。
Docker 镜像服务
对于从 Docker 镜像部署的服务,你可以在服务设置中指定先前的镜像标签来进行还原。将镜像标签更新为所需的版本,Zeabur 就会使用该镜像重新部署。
预建服务(数据库与模板)
对于从模板或数据库部署的服务,还原遵循相同的仪表板操作流程。从历史记录中选取所需的部署并点击 Rollback 即可。
还原不会还原的项目
还原会将应用程序代码和构建产物恢复到先前的状态。但不会影响:
- 环境变量 — 自原始部署以来对环境变量所做的任何变更都会保持不变。
- 存储空间 — 存储在持久性存储空间中的数据不会被还原。
- 数据库内容 — 如果你的部署包含数据库迁移,还原应用程序不会反转这些迁移。你可能需要手动处理结构描述(schema)变更。
⚠️
如果你的部署涉及数据库迁移或其他有状态的变更,请谨慎规划还原。如有需要,考虑在应用程序还原的同时还原数据库备份。