在 Linux 上升级 GitLab,方式取决于你当初的安装方式(Omnibus 包、Docker、源码)。下面是最常见的几种情况。
sudo gitlab-rake gitlab:backup:create
以及备份配置文件:
sudo cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
sudo cp -R /etc/gitlab/ssl /etc/gitlab/ssl.bak # 如果有
⚠️ 不要跨大版本直接升级
例如:
官方升级路径工具:
https://docs.gitlab.com/ee/update/index.html#upgrade-paths
sudo apt update
sudo apt install gitlab-ee # 或 gitlab-ce
如果是指定版本:
sudo apt install gitlab-ee=16.11.0-ee.0
sudo yum update
sudo yum install gitlab-ee
或指定版本:
sudo yum install gitlab-ee-16.11.0-ee.0
sudo gitlab-ctl reconfigure
sudo gitlab-ctl status
docker exec -it gitlab gitlab-rake gitlab:env:info
docker pull gitlab/gitlab-ee:16.11.0-ee.0
docker stop gitlab
docker rm gitlab
docker run --detach \
--hostname gitlab.example.com \
--publish 443:443 --publish 80:80 --publish 22:22 \
--name gitlab \
--restart always \
--volume /srv/gitlab/config:/etc/gitlab \
--volume /srv/gitlab/logs:/var/log/gitlab \
--volume /srv/gitlab/data:/var/opt/gitlab \
gitlab/gitlab-ee:16.11.0-ee.0
⚠️ 数据卷必须保持不变
helm repo update
helm upgrade gitlab gitlab/gitlab \
-n gitlab \
-f values.yaml \
--version 7.x.x
sudo gitlab-rake gitlab:check SANITIZE=true
sudo gitlab-ctl tail
sudo gitlab-ctl tail
必须按官方升级路径逐级升。
至少预留 2–3 倍当前数据大小
如果你愿意,可以告诉我:
cat /opt/gitlab/version-manifest.txt)我可以给你精确的升级命令。