一、GitLab备份
**注意:**由于我的GitLab是docker安装的,所以我的操作都是在容器内操作的,大家如果不是用docker安装的则直接执行命令就行。
1、Docker安装GitLab
链接:常用环境部署(八)------Docker安装GitLab-CSDN博客
2、GitLab备份
(1)进入容器
docker exec -it gitlab bash
(2)备份
gitlab-backup create
(3)备份成功

**注意:**备份过程中会提示创建备份文件,备份完成后大家就会在备份目录看到备份文件。如下图:

3、修改GitLab备份文件位置
(1)修改GitLab的配置文件
vim /etc/gitlab/gitlab.rb
将下图红框中的参数注释取消,然后将路径修改成自己想要的路径。不修改则是图中的默认路径

(2)停止GitLab
gitlab-ctl stop
(3)重载配置文件
gitlab-ctl reconfigure
(4)重启GitLab
gitlab-ctl start
二、GitLab迁移
1、备份数据上传
(1)将备份文件上传到新GitLab备份目录

(2)停止gitlab部分服务,保证恢复过程中有数据写入
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

(3)执行备份恢复命令
gitlab-rake gitlab:backup:restore BACKUP=xxxxx
注意: xxxxx:对应的备份的标号,如
gitlab-rake gitlab:backup:restore BACKUP=1703955704_2023_12_30_13.10.2

下面这一步直接输入yes
下面这一步也直接输入yes
下图就是恢复完成了
恢复完成后,就可以在新的GitLab中看到备份的代码!