gitlab的備份和恢復
備份
- 配置文件中加入
gitlab_rails['backup_path']='/home/admin/data_bak/gitlab_bak' gitlab_rails['backup_keep_time']=604800
- 如果自定義備份目錄需要賦予git權限
mkdir /home/admin/data_bak/gitlab_bak chown -R git.git /home/admin/data_bak/gitlab_bak
- 重啟配置啟動
gitlab-ctl reconfigure gitlab-ctl restart
- 定時任務crontab中加入
0 2 * * * /usr/bin/gitlab-rake gitlab:backup:create
策略建議:本地保留三到七天,在異地備份永久保存
恢復
- 停止數據寫入服務
- gitlab-ctl stop unicorn
- gitlab-ctl stop sidekiq
- gitlab-rake gitlab:backup:restore BACKUP=1492296095
- date -d @1492296095
定時任務應該手動執行一下,查看是否備份成功,注意環境變量。
不同版本的gitlab備份名稱不一樣。
1、定時任務應該手動執行一下,查看是否備份成功,注意環境變量。
2、不同版本的gitlab備份名稱不一樣。或者獲取備份文件名稱不一樣。例如我所用的版本,備份名稱+時間戳,而恢復時,調用的不帶時間戳,產生以下文件找不到的錯誤
The backup file 1499105084_gitlab_backup.tar does not exist!
---改備份名再來---
3、恢復之后30s才能使用
