GitLab在CentOS上的更新方法
sudo gitlab-rake gitlab:backup:create
备份文件默认存储在/var/opt/gitlab/backups目录,文件名格式为YYYY-MM-DD-HH-mm-ss_gitlab_backup.tar。sudo gitlab-rake gitlab:env:info
policycoreutils、openssh-server、openssh-clients、postfix;CentOS 8/Stream 8+需安装对应替代包),避免升级过程中因依赖缺失失败。sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq
sudo gitlab-ctl stop nginx
sudo yum update gitlab-ce
gitlab-ce-16.0.0.el7.x86_64.rpm),执行升级:sudo rpm -Uvh gitlab-ce-<version>.el7.x86_64.rpm
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
sudo gitlab-rake gitlab:check
http://your-server-ip),在首页底部查看版本号。sudo yum remove gitlab-ce gitlab-ce-cli gitlab-workhorse
<version>为实际版本号):wget https://packages.gitlab.com/gitlab/gitlab-ce/el/$(rpm -E %{rhel})/x86_64/gitlab-ce-<version>.el$(rpm -E %{rhel}).x86_64.rpm
yum安装下载的RPM包(自动解决依赖):sudo yum install ./gitlab-ce-<version>.el$(rpm -E %{rhel}).x86_64.rpm
/var/opt/gitlab/backups目录下的备份文件。docker-compose down -v
docker pull gitlab/gitlab-ce:latest
docker-compose.yml文件启动容器(确保配置一致):docker-compose up -d
gitlab-ctl reconfigure报错(如Chef进程占用),查找并终止相关进程:ps aux | grep gitlab
kill -9 <pid> # 替换<pid>为实际进程ID
sudo gitlab-rake db:migrate:status # 检查迁移状态
sudo gitlab-rake db:migrate # 执行未完成的迁移
/etc/gitlab/gitlab.rb和/etc/gitlab/gitlab-secrets.json文件,再执行gitlab-ctl reconfigure。