1. 程式人生 > >Gitlab備份、恢復與遷移

Gitlab備份、恢復與遷移

cront ttr nic extern crm crontab side 進行 備份目錄

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‘] = /data/backups

修改完成之後使用gitlab-ctl reconfigure命令重載配置文件即可.

本次備份設置目錄為:/data/backups

Gitlab 自動備份

也可以通過crontab使用備份命令實現自動備份:

sudo su -
crontab -e

加入以下, 實現每天淩晨2點進行一次自動備份:

0 2 * * * /usr/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
sudo gitlab-ctl start

Gitlab遷移

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

參考文檔:https://segmentfault.com/a/1190000002439923

Gitlab備份、恢復與遷移