背景:
假设我们当前的gitlab挂掉了,整个服务器都起不来了,但是我们有对gitlab的归档备份,这时候还可以恢复出数据来。
(需要备份gitlab原始安装包、gitalb的tar备份文件、/etc/gitlab/gitlab.rb文件)
步骤如下:
1、在新的主机安装与之前机器相同版本的gitlab rpm包。
2、传输一份之前的tar归档文件到新的gitlab主机的 /var/opt/gitlab/backups/目录下;拷贝备份的gitlab.rb文件到新机器的/etc/gitlab/目录下。
然后就是到新机器上执行下述的命令了:
3、修改下新的服务器的/etc/gitlab/gitlab.rb中的external_url 为新的服务器地址即可(假设我们没有对默认的gitlab备份路径等参数做修改,都是使用默认参数)。
4、执行gitlab-ctl reconfigure 重新配置下gitalb。
5、然后chown git.root /var/opt/gitlab/backups/ -R 修改下文件权限。
6、再 cd /var/opt/gitlab/backups,执行gitlab-rake gitlab:backup:restore BACKUP=1487196686 # 这个数字是gitlab备份的文件前缀
在恢复的过程中,需要输入几次yes,即可完成恢复。
然后gitlab-ctl restart 即可。
gitlab在本机的恢复操作方法,在官方网站有介绍,就不贴了。