gitlab 迁移 备份

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了gitlab 迁移 备份相关的知识,希望对你有一定的参考价值。

gitlab 迁移 备份


一、基本步骤

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

gitlab-rake gitlab:backup:create

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

Gitlab 修改备份文件默认目录

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

gitlab_rails[‘backup_path‘] = ‘/mnt/backups‘

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

Gitlab 自动备份

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

sudo su -
crontab -e

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

0 2 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create

Gitlab 恢复

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

# 停止相关数据连接服务
gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

# 从1393513186编号备份中恢复
gitlab-rake gitlab:backup:restore BACKUP=1393513186

Gitlab 迁移

迁移和恢复过程一样,但是有一些注意事项

1. 迁移的新 Gitlab 版本必须和原版一样

2.迁移是将 Gitlab 备份的名称类似为1393513186_gitlab_backup.tar的压缩包 拷贝到新的服务器 Gitlab 备份的目录下

执行 Gitlab 恢复同样的操作即可

二、迁移过程中遇到几处错误

1. 迁移不成功,无法打开 Gitlab 登录首页,出点 502 错误码

错误分析:

执行:sudo gitlab-rake gitlab:check SANITIZE=true
出现如下错误:

2016-06-15_08:41:41.23074 /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/activesupport-4.2.6/lib/active_support/dependencies.rb:274:in `require‘: /usr/lib/x86_64-linux-gnu/libstdc++.so.6: version `GLIBCXX_3.4.21‘ not found (required by /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/charlock_holmes-0.7.3/lib/charlock_holmes/charlock_holmes.so) - /opt/gitlab/embedded/service/gem/ruby/2.1.0/gems/charlock_holmes-0.7.3/lib/charlock_holmes/charlock_holmes.so (LoadError)

错误解决办法:

sudo add-apt-repository ppa:ubuntu-toolchain-r/test
sudo apt-get update
sudo apt-get install g++-5

2. 迁移后个别项目无法访问,网页出现 500 错误码

错误解决办法:

将 老的 Gitlab 上 /etc/gitlab/gitlab-secrets.json 文件中 "db_key_base": "0707b0385c25ca3d9bf56ab9153c86593dd03897777dead5df793bdf67f678577f8543e8ef31c9c6f1651d14237283aa61ccb5859e53cb791bff2daaa0c47f4c"

字段覆盖的新的 Gitlab 对应的位置,重启 Gitlab问题 解决。

3. 老的 Gitlab 做了汉化,备份迁移过来没有汉化,可以自行重新汉化,这并不影响使用。

4.runner 由于 ip 地址以及域名等问题 无法正常使用需要再配置一次。

参考文献

官方文档:http://docs.gitlab.com/ce/raketasks/backup_restore.html

使用Gitlab一键安装包后的日常备份恢复与迁移 :https://segmentfault.com/a/1190000002439923

 ubuntu 安装 gcc 5.1 :http://askubuntu.com/questions/618474/how-to-install-the-latest-gcurrently-5-1-in-ubuntucurrently-14-04

迁移后项目无法访问报错解决办法:https://gitlab.com/gitlab-org/gitlab-ce/issues/17873


以上是关于gitlab 迁移 备份的主要内容,如果未能解决你的问题,请参考以下文章

Gitlab备份恢复与迁移

gitlab 搭建 备份 升级 迁移恢复

gitlab备份和迁移

gitlab备份还原及迁移

如何将 gitlab 备份迁移到具有最新 gitlab 版本的新服务器

使用Gitlab一键安装包后的日常备份恢复与迁移