查看gitlab版本
bash
gitlab-rake gitlab:env:info
新旧 GitLab 版本必须一致,不然恢复的时候会报错

一、备份
1.备份命令
bash
sudo gitlab-backup create
备份完成后,备份存放的默认目录在/var/opt/gitlab/backups/下
可以通过查看以下配置文件,知道备份文件目录
cat /etc/gitlab/gitlab.rb
gitlab_rails['manage_backup_path'] = true # 开启GitLab备份功能
gitlab_rails['backup_path'] = "/var/opt/gitlab/backups" # 指定备份路径
gitlab_rails['backup_archive_permissions'] = 0644 # 备份文件权限
gitlab_rails['backup_keep_time'] = 604800 # 备份保留时间,默认为7天,默认单位秒
2.备份以下目录中的密钥文件
bash
/etc/gitlab/gitlab-secrets.json
二、恢复
1.将新的gitlab服务部署完成并开启后,拷贝之前的备份到本机器中
bash
cp 1699958400_*.tar /var/opt/gitlab/backups/
chown git:git /var/opt/gitlab/backups/*.tar
2.恢复备份之前需要先停止以下服务,不然恢复时会报错
bash
sudo gitlab-ctl stop puma
sudo gitlab-ctl stop sidekiq
3.执行以下命令恢复备份
bash
sudo gitlab-backup restore BACKUP=1699958400_2025_12_14_15.6.2
过程中会提示:
Do you want to continue (yes/no)?
输入:
yes
4.恢复完成后把gitlab-secrets.json密钥文件放到以下目录中
bash
/etc/gitlab
5.执行以下命令重新加载gitlab服务即可
bash
sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart