Linux中GitLab的更新流程
一 准备与规划
二 标准升级步骤 Omnibus 包
sudo gitlab-backup create(GitLab 12.2+;旧版本可用 gitlab-rake gitlab:backup:create)。gitlab_rails['backup_path'] 中查看。/etc/gitlab/gitlab.rb、/etc/gitlab/gitlab-secrets.json(恢复时必需)。sudo gitlab-ctl status、sudo gitlab-rake gitlab:check SANITIZE=true。sudo touch /etc/gitlab/skip-auto-backup。sudo apt update && sudo apt install gitlab-ee(或 gitlab-ce)。sudo yum install gitlab-ee(或 gitlab-ce)。sudo gitlab-ctl reconfigure、sudo gitlab-ctl restart。三 指定版本与升级路径
apt-cache madison gitlab-ee(或 gitlab-ce)查看可用版本;安装如 sudo apt install gitlab-ee=15.3.2-ee.0。yum --showduplicates list gitlab-ee(或 gitlab-ce);安装如 sudo yum install gitlab-ee-15.3.2-ee.0。四 回滚与常见问题
gitlab.rb 与 gitlab-secrets.json。gitlab-ctl stop unicorn、gitlab-ctl stop sidekiq(必要时 gitlab-ctl stop nginx)。sudo gitlab-rake gitlab:backup:restore BACKUP=时间戳_版本_gitlab_backup(BACKUP 为文件名去掉 _gitlab_backup.tar 的部分)。sudo gitlab-ctl reconfigure、sudo gitlab-ctl restart。gitlab-ctl status,必要时 gitlab-ctl restart sidekiq、gitlab-ctl hup puma(或 unicorn)、或重启 gitlab-runsvdir。chmod 644 /var/opt/gitlab/backups/*.tar)。gitlab-rake gitlab:check SANITIZE=true 排查配置与仓库问题。