gitlab備份、還原及遷移


安裝gitlab可參考上篇博文:gitlab在centons環境下的安裝及使用

一、gitlab創建備份

在終端中執行:gitlab-rake gitlab:backup:create 備份文件所在路徑為:/var/opt/gitlab/backups/

備份得到的文件格式如:1504860571_2017_09_08_9.5.3_gitlab_backup.tar   時間挫_年_月_日_gitlap版本_gitlab_backup.tar

若需修改備份文件的存放路徑:vim  /etc/gitlab/gitlab.rb 修改# gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"即可

自動備份:可以借助於時間任務進行。

具體實現:crontab -e    

     37 10 * * * /opt/gitlab/bin/gitlab-rake gitlab:backup:create  --每天的10:37執行備份。

自動清除備份文件

vim /var/opt/gitlab/backups/remove.sh  --創建備份腳本

!/bin/bash
find "/var/opt/gitlab/backups/" -name "*.tar" -ctime +30  -exec rm -rf {} \;  

#刪除30以前的備份文件

chmod +x /var/opt/gitlab/backups/remove.sh
contab -e
45 10 * * * sh /var/opt/gitlab/backups/remove.sh   --每天的10:45執行刪除備份的腳本

二:gitlab還原

停止相關數據連接服務

gitlab-ctl stop unicorn
gitlab-ctl stop sidekiq

還原操作

假設從1505097437_2017_09_11_9.5.3_gitlab_backup.tar備份文件中恢復

在終端執行:gitlab-rake gitlab:backup:restore BACKUP=1505097437

啟動gitlab服務

gitlab-ctl start

注意:不能直接在終端執行gitlab-ctl stop停止所有服務。因gitlab刪除和還原操作還需要使用到redis和postgresql連接

 

三、gitlab遷移

在新的服務器上搭建好gitlab環境但gitlab版本需跟原有版本一致。然后將原gitlab備份拷貝到新gitlab環境的對應位置,再執行還原過程即可。

注意:cp的時候屬主和屬組會改變,導致權限不夠,需要修改成git為所屬者。

在終端執行:chown git:git  /var/opt/gitlab/backups/1505097437_2017_09_11_9.5.3_gitlab_backup.tar


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM