在 CentOS 上升级 GitLab(通常指 Omnibus 安装的 GitLab CE/EE),推荐且最安全的方式是使用官方仓库升级。下面按「标准升级流程」来说明。
sudo gitlab-rake gitlab:backup:create
备份文件默认在:
/var/opt/gitlab/backups/
sudo gitlab-rake gitlab:env:info
或
cat /opt/gitlab/version-manifest.txt | head -n 1
⚠️ GitLab 不能跨大版本直接升(例如 14 → 16 不行),必须逐级升:
14.x → 15.x → 16.x → 17.x
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.rpm.sh | sudo bash
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash
sudo yum clean all
sudo yum makecache
sudo yum update gitlab-ce
# 或 EE
sudo yum update gitlab-ee
sudo yum install gitlab-ce-15.11.13-ce.0.el7.x86_64
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
sudo gitlab-ctl status
# 1. 升级到 14 最新
yum install gitlab-ce-14.10.5
# 2. 升级到 15 最低版本
yum install gitlab-ce-15.0.0
# 3. 升级到 15 最新
yum install gitlab-ce-15.11.13
# 4. 升级到 16
yum install gitlab-ce-16.0.0
sudo gitlab-rake db:migrate
sudo gitlab-ctl reconfigure
至少预留 2–3 倍 GitLab 数据大小
GitLab 17+ 可能不再支持 CentOS 7,建议迁移到:
docker pull gitlab/gitlab-ce:latest
docker stop gitlab
docker rm gitlab
docker run ...(保持挂载目录不变)
如果你愿意,可以告诉我:
我可以给你精确的升级路径命令。