1. 程式人生 > >gitlab 遷移

gitlab 遷移

備份 fig 安裝 edi con 相同 rec 默認目錄 itl

Gitlab 創建備份

使用Gitlab一鍵安裝包安裝Gitlab非常簡單, 同樣的備份恢復與遷移也非常簡單. 使用一條命令即可創建完整的Gitlab備份:

gitlab-rake gitlab:backup:create

使用以上命令會在/var/opt/gitlab/backups目錄下創建一個名稱類似為1393446186_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

從1393446186編號備份中恢復

gitlab-rake gitlab:backup:restore BACKUP=1393446186

啟動Gitlab

sudo gitlab-ctl start

Gitlab遷移

遷移如同備份與恢復的步驟一樣, 只需要將老服務器/var/opt/gitlab/backups目錄下的備份文件拷貝到新服務器上的/var/opt/gitlab/backups即可(如果你沒修改過默認備份目錄的話). 但是需要註意的是新服務器上的Gitlab的版本必須與創建備份時的Gitlab版本號相同. 比如新服務器安裝的是最新的7.60版本的Gitlab, 那麽遷移之前, 最好將老服務器的Gitlab 升級為7.60在進行備份.

在卸載gitlab然後再次安裝執行sudo gitlab-ctl reconfigure的時候往往會出現:ruby_block[supervise_redis_sleep] action run,會一直卡無法往下進行!

解決方案:

1、按住CTRL+C強制結束;

2、運行:sudo systemctl restart gitlab-runsvdir;

3、再次執行:sudo gitlab-ctl reconfigure

gitlab 遷移