ubuntu gitlab如何升级版本
导读:Ubuntu 上升级 GitLab 版本的标准流程 一 升级前准备 确认当前版本与升级目标 查看版本: 命令:sudo gitlab-rake gitlab:env:info 或 cat /opt/gitlab/embedded/s...
Ubuntu 上升级 GitLab 版本的标准流程
一 升级前准备
- 确认当前版本与升级目标
- 查看版本:
- 命令:
sudo gitlab-rake gitlab:env:info或cat /opt/gitlab/embedded/service/gitlab-rails/VERSION - 浏览器访问:
https://你的域名或IP/help
- 命令:
- 查看可升级版本:
apt policy gitlab-ce或apt policy gitlab-ee(显示 Installed 与 Candidate)。
- 查看版本:
- 核对升级路径
- 多数版本不支持跨大版本直接升级,需要按官方路径逐级升级;可使用官方升级路径工具校验:https://gitlab.cn/support/toolbox/upgrade-path/。
- 完整备份与回滚方案
- 备份:
sudo gitlab-rake gitlab:backup:create(默认备份到 /var/opt/gitlab/backups)。 - 建议同时做系统快照/关机快照,便于回滚。
- 备份:
- 维护窗口与通知
- 升级期间会重启服务,建议安排在低峰期并提前通知用户。
- 检查可用资源
- 确保磁盘空间充足、内存建议≥4GB,避免因资源不足导致 reconfigure 或迁移失败。
二 标准升级步骤
- 更新索引与仓库(CE/EE 二选一)
- CE:
sudo apt update & & sudo apt install --download-only gitlab-ce - EE:
sudo apt update & & sudo apt install --download-only gitlab-ee
- CE:
- 执行升级
- 直接升级到仓库最新版:
sudo apt install gitlab-ce(或gitlab-ee)。 - 指定版本(示例):
sudo apt install gitlab-ce=15.11.0-ce.0(或gitlab-ee=15.11.0-ee.0)。
- 直接升级到仓库最新版:
- 重新配置与重启
sudo gitlab-ctl reconfiguresudo gitlab-ctl restart
- 验证
- 版本:
sudo gitlab-rake gitlab:env:info或访问 /help 页面。 - 服务状态:
sudo gitlab-ctl status。
- 版本:
三 跨大版本与数据库升级要点
- 严格按升级路径逐级进行
- 例如历史版本常见路径包含:8.11.Z → 8.12.0 → 8.17.7 → 9.5.10 → 10.8.7 → 11.11.8 → 12.0.12 → 12.1.17 → 12.10.14 → 13.0.14 → 13.1.11 → 13.8.8 → 13.12.15 → 14.0.12 → 14.Y.Z。
- 升级前在每个台阶验证功能正常后再继续下一步。
- 数据库版本要求
- 某些大版本对内置 PostgreSQL 有硬性要求。例如升级到 GitLab 18.0 需要 PostgreSQL 16.x。
- 若不满足,先在同大版本内升级到最新小版本(如 17.11.x),再使用
sudo gitlab-ctl pg-upgrade升级数据库,最后升级到目标版本。
- 升级失败快速回滚
- 先恢复最近备份(注意备份与恢复两端的 GitLab 版本需一致,包含数据库版本):
- 恢复:
sudo gitlab-rake gitlab:backup:restore BACKUP=时间戳
- 恢复:
- 或使用升级前的系统快照回滚。
- 先恢复最近备份(注意备份与恢复两端的 GitLab 版本需一致,包含数据库版本):
四 常见问题与排查
- 升级命令报错(如 dpkg 预安装脚本失败)
- 多因数据库版本不满足新版本要求。先在同大版本内升级到最新小版本,完成
gitlab-ctl pg-upgrade后再升级目标版本。
- 多因数据库版本不满足新版本要求。先在同大版本内升级到最新小版本,完成
- 配置文件变更导致 reconfigure 失败
- 例如旧写法
git_data_dir已在 11.0 移除,需改为:git_data_dirs({ "default" => { "path" => "/data/git" } } )。
- 例如旧写法
- 升级后页面 500 或健康检查失败
- 查看日志:
sudo gitlab-ctl tail;确认数据库迁移是否完成、资源是否充足、备份恢复是否一致。
- 查看日志:
- 升级耗时较长或 SSH 易断
- 建议使用带界面的终端或 screen/tmux 会话,避免网络中断导致升级中断。
五 建议的升级顺序清单
- 备份与回滚方案就绪(含系统快照)。
- 核对当前版本与目标版本,并用官方工具校验升级路径。
- 逐台阶升级:同大版本内先到最新小版本 → 满足数据库前置条件 → 再跨到下一个大版本。
- 每台阶执行:
reconfigure、restart、status与功能验证。 - 生产环境先在测试环境演练,确认无误再上线。
声明:本文内容由网友自发贡献,本站不承担相应法律责任。对本内容有异议或投诉,请联系2913721942#qq.com核实处理,我们将尽快回复您,谢谢合作!
若转载请注明出处: ubuntu gitlab如何升级版本
本文地址: https://pptw.com/jishu/778055.html
