gitlab服务器迁移时,确保A,B两台服务器上运行的gitlab版本一致,避免麻烦。
第一步:确认A,B两台服务器上gitlab版本。

root@git-server:~#  gitlab-rake gitlab:env:info

root@git-server:~#  gitlab-rake gitlab:env:info

第二步:备份A服务器上的gitlab数据

root@git-server:~#  gitlab-rake gitlab:backup:create RAILS_ENV=production

备份过程 

root@git-server:/opt# gitlab-rake gitlab:backup:create RAILS_ENV=production
2019-09-16 12:00:28 +0000 -- Dumping database ... 
Dumping PostgreSQL database gitlabhq_production ... [DONE]
2019-09-16 12:00:37 +0000 -- done
2019-09-16 12:00:37 +0000 -- Dumping repositories ...
 * guoxing/mall ... [DONE]
[SKIPPED] Wiki
 * guoxing/mall_ios ... [DONE]
[SKIPPED] Wiki
 * jiangshenghui2019/test ... [SKIPPED]
[SKIPPED] Wiki
 * ast/test ... [SKIPPED]
[SKIPPED] Wiki
 * link/test ... [SKIPPED]
[SKIPPED] Wiki
 * guoxing/mall-android ... [DONE]
[SKIPPED] Wiki
 * guoxing/hhmall-android ... [DONE]
[SKIPPED] Wiki
 * guoxing/hhmall-ios ... [DONE]
[SKIPPED] Wiki
 * root/hhmall ... [DONE]
[SKIPPED] Wiki
 * guoxing/mall-web ... [DONE]
[SKIPPED] Wiki
 * guoxing/cpct_foundation ... [DONE]
[SKIPPED] Wiki
 * xingzhuan.ma/mall_index ... [DONE]
[SKIPPED] Wiki
 * xingzhuan.ma/mall_app ... [DONE]
[SKIPPED] Wiki
 * xingzhuan.ma/mall_business_web ... [DONE]
[SKIPPED] Wiki
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping uploads ... 
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping builds ... 
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping artifacts ... 
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping pages ... 
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping lfs objects ... 
2019-09-16 12:03:28 +0000 -- done
2019-09-16 12:03:28 +0000 -- Dumping container registry images ... 
2019-09-16 12:03:28 +0000 -- [DISABLED]
Creating backup archive: 1568635408_2019_09_16_11.10.4-ee_gitlab_backup.tar ... done
Uploading backup archive to remote storage  ... skipped
Deleting tmp directories ... done
done
done
done
done
done
done
done
Deleting old backups ... skipping

备份成功后会生成一个tar文件,存储在/var/opt/gitlab/backups下,生成一个格式为1568635408_2019_09_16_11.10.4-ee_gitlab_backup.tar的文件。

第三步:将A服务器上生成的tar文件,复制到B服务器上,在B服务器上使用scp命令

root@git-server:~# scp 1568635408_2019_09_16_11.10.4-ee_gitlab_backup.tar ubuntu@192.168.0.122:/home/ubuntu
ubuntu@192.168.0.122's password: 
1568635408_2019_09_16_11.10.4-ee_gitlab_backup.tar

第四步:在B上还原备份过的git数据

root@git-server:~# gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1568635408_2019_09_16_11.10.4-ee

还原过程:

更改HTTP Clone URL

vim /opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml

 

Logo

瓜分20万奖金 获得内推名额 丰厚实物奖励 易参与易上手

更多推荐