在Ubuntu上使用Jenkins进行版本回滚,可通过以下方式操作:
-
手动回滚(基于构建历史)
- 在Jenkins项目页面进入「Build History」,找到需回滚的构建版本,点击「Rebuild」或使用「Copy Build Artifacts」插件复制旧版本产物并重新部署。
- 适用于测试环境或非关键生产场景的快速回滚。
-
参数化回滚(通过脚本控制)
- 在Jenkins Pipeline中定义参数化构建,添加「ROLLBACK_VERSION」参数,回滚时输入目标版本号(如Git commit hash或Docker镜像标签)。
- 示例脚本:通过
git reset --hard <版本号>回退代码,或使用docker service update --image <旧镜像标签>更新部署的容器镜像。
-
自动化回滚(基于健康检查)
- 配合监控工具(如n8n)检测应用状态,当异常时触发Jenkins回滚任务,自动执行预设的回滚脚本。
- 脚本逻辑:拉取旧版本代码/镜像→停止当前服务→部署旧版本→验证服务状态。
-
备份恢复回滚
- 部署前通过脚本备份项目文件或数据库(如
tar -zcf backup.tar.gz /var/www/html),回滚时解压备份文件覆盖当前环境。
- 适用于需要完整环境还原的场景。
注意事项:
- 回滚前需确保备份可用,避免数据丢失。
- 生产环境建议优先通过「Pin Build」锁定稳定版本,减少手动操作风险。
- 自动化回滚需提前测试脚本逻辑,确保版本标识与部署流程匹配。