在 Debian 上升级 GitLab(通常指 Omnibus 版 GitLab)一般流程如下。请先确认你是 Omnibus 安装(apt 安装) 还是 源码安装,以下以最常见、官方推荐的 Omnibus + apt 方式说明。
sudo gitlab-rake gitlab:backup:create
同时备份配置:
sudo cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
sudo cp -R /etc/gitlab /etc/gitlab.backup
sudo gitlab-rake gitlab:env:info
或
cat /opt/gitlab/version-manifest.txt
GitLab 不支持跨大版本跳跃升级,例如:
8.x → 10.x ❌
13.0 → 16.x ❌
必须逐级升级:
13.0 → 13.12 → 14.0 → 14.9 → 15.0 → 15.11 → 16.0 → 16.x
参考官方升级路径工具: https://gitlab.com/gitlab-org/gitlab/-/raw/master/doc/update/README.md
sudo apt update
sudo apt install gitlab-ee # 企业版
# 或
sudo apt install gitlab-ce # 社区版
如果未自动升级到目标版本,可指定版本:
sudo apt install gitlab-ce=16.11.0-ce.0
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
例如你现在是 14.3,想升到 16.x:
# 升到 14.10
sudo apt install gitlab-ce=14.10.0-ce.0
sudo gitlab-ctl reconfigure
# 升到 15.0
sudo apt install gitlab-ce=15.0.0-ce.0
sudo gitlab-ctl reconfigure
# 升到 15.11
sudo apt install gitlab-ce=15.11.0-ce.0
sudo gitlab-ctl reconfigure
# 升到 16.x
sudo apt install gitlab-ce=16.11.0-ce.0
sudo gitlab-ctl reconfigure
sudo gitlab-rake gitlab:check SANITIZE=true
sudo gitlab-ctl status
GitLab 会自带 PG,不要手动升级系统 PG。
查看日志:
sudo gitlab-ctl tail
只能从备份恢复,不能降级 GitLab 版本。
如果你愿意,可以告诉我:
我可以帮你算精确升级路径。