操作系统和gitlab版本:
系统/软件 | 版本 |
---|---|
Centos | 6.5 |
GitLab | 8.9 |
GitLab创建备份:
使用GitLab一键安装包安装GitLab可以很方便简单,并且能够很容易的进行备份恢复与迁移;其中使用下面这条命令就可以创建一个完整的GitLab备份:
[root@ip-192-168-0-21 ~]# sudo gitlab-rake gitlab:backup:create
使用上面的命令就会在/var/opt/gitlab/backups
目录下创建一个名称类似为:1468463772_gitlab_backup.tar
的压缩包,这个压缩包就是GitLab创建的一个完整的备份,在其中的1468463772就是备份创建的日期。
GitLab修改备份文件的默认目录:
可以通过修改/etc/gitlab/gitlab.rb
的一下内容来修改备份文件的存放目录:
gitlab_rails['backup_path'] = '/var/opt/gitlab/backups'
将其中的/var/opt/gitlab/backups
修改为你想要存放备份的目录即可,记得修改完成后使用gitlab-ctl reconfigure
命令重新加载配置文件,并运行gitlab-ctl restart
重启gitlab的相关服务。
GitLab的自动备份:
我们还可以通过crontab
来实现GitLab的自动备份。
#首先切换用户
[root@ip-192-168-0-21 ~]# sudo su -
[root@ip-192-168-0-21 ~]# crontab -e
然后在打开的窗体中,加入以下内容实现每天06:00进行一次自动备份:
0 6 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create
从GitLab备份恢复:
使用GitLab备份进行恢复也很简单哟:
#首先停止gitlab的相关服务
[root@ip-192-168-0-21 ~]# sudo gitlab-ctl stop
#使用日期为1468463772(即上文中备份的文件)的备份文件进行恢复
[root@ip-192-168-0-21 ~]# sudo gitlab-rake gitlab:backup:restore BACKUP=1468463772
#重新启动gitlab相关服务
[root@ip-192-168-0-21 ~]# sudo gitlab-ctl start
GitLab的迁移:
迁移如同备份与恢复的步骤一样, 只需要将老服务器/var/opt/gitlab/backups目录下的备份文件拷贝到新服务器上的/var/opt/gitlab/backups即可(如果你没修改过默认备份目录的话). 但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的8.9.6版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为8.9.6再进行备份。