β

gitlab 备份恢复与迁移

PHPor 的Blog 575 阅读

这里只介绍使用rpm包方式安装时的备份恢复与迁移

转载: http://segmentfault.com/a/1190000002439923

Gitlab 创建备份

使用Gitlab一键安装包安装Gitlab非常简单, 同样的备份恢复与迁移也非常简单. 使用一条命令即可创建完整的Gitlab备份:

gitlab-rake gitlab:<span class="hljs-operator"><span class="hljs-keyword">backup</span>:<span class="hljs-keyword">create</span>
</span>

使用以上命令会在 /var/opt/gitlab/backups 目录下创建一个名称类似为 1393513186_gitlab_backup.tar 的压缩包, 这个压缩包就是Gitlab整个的完整部分, 其中开头的 1393513186 是备份创建的日期.

Gitlab 修改备份文件默认目录

你也可以通过修改 /etc/gitlab/gitlab.rb 来修改默认存放备份文件的目录:

gitlab_rails[<span class="hljs-string">'backup_path'</span>] = <span class="hljs-string">'/mnt/backups'</span>

/mnt/backups 修改为你想存放备份的目录即可, 修改完成之后使用 gitlab-ctl reconfigure 命令重载配置文件即可.

Gitlab 自动备份

也可以通过 crontab 使用备份命令实现自动备份:

<span class="hljs-title">sudo</span> su -
crontab -e

加入以下, 实现每天凌晨2点进行一次自动备份:

 * * * /opt/gitlab/bin/gitlab-rake gitlab:<span class="hljs-operator"><span class="hljs-keyword">backup</span>:<span class="hljs-keyword">create</span>
</span>

Gitlab 恢复

同样, Gitlab的从备份恢复也非常简单:

# 停止相关数据连接服务
gitlab-ctl <span class="hljs-operator"><span class="hljs-keyword">stop</span> unicorn
gitlab-ctl <span class="hljs-keyword">stop</span> sidekiq

# 从<span class="hljs-number">1393513186</span>编号备份中恢复
gitlab-rake gitlab:<span class="hljs-keyword">backup</span>:<span class="hljs-keyword">restore</span> <span class="hljs-keyword">BACKUP</span>=<span class="hljs-number">1393513186</span>

# 启动Gitlab
sudo gitlab-ctl <span class="hljs-keyword">start</span>
</span>

Gitlab迁移

迁移如同备份与恢复的步骤一样, 只需要将老服务器 /var/opt/gitlab/backups 目录下的备份文件拷贝到新服务器上的 /var/opt/gitlab/backups 即可(如果你没修改过默认备份目录的话). 但是需要注意的是新服务器上的Gitlab的版本必须与创建备份时的Gitlab版本号相同. 比如新服务器安装的是最新的7.60版本的Gitlab, 那么迁移之前, 最好将老服务器的Gitlab 升级为7.60在进行备份.

The post gitlab 备份恢复与迁移 appeared first on PHPor 的Blog .

作者:PHPor 的Blog
PHP+Mysql+Apache+Linux
原文地址:gitlab 备份恢复与迁移, 感谢原作者分享。

发表评论