GitLab數(shù)據(jù)備份與恢復(fù)

<a >
神農(nóng)民博客

</a>

GitLab作為開源、功能強大的代碼托管軟件,其價值不可估量,是軟件工作者必不可少的。本文主要說明如何備份和恢復(fù)GitLab數(shù)據(jù)。數(shù)據(jù)無價,多做備份,謹慎操作!

創(chuàng)建備份

$ sudo gitlab-rake gitlab:backup:create

執(zhí)行完備份命令后會在/var/opt/gitlab/backups目錄下生成備份后的文件,如1500809139_2017_07_23_gitlab_backup.tar。1500809139是一個時間戳,從1970年1月1日0時到當前時間的秒數(shù)。這個壓縮包包含Gitlab所有數(shù)據(jù)(例如:管理員、普通賬戶以及倉庫等等)。

從備份恢復(fù)

本節(jié)說明如何在另一臺主機上恢復(fù)數(shù)據(jù)。

將備份文件拷貝到/var/opt/gitlab/backups下(備份和恢復(fù)的GitLab版本盡量保持一致,后文描述了版本不匹配的處理方法)。

停止相關(guān)數(shù)據(jù)連接服務(wù)

sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq

從備份恢復(fù)

從指定時間戳的備份恢復(fù)(backups目錄下有多個備份文件時):

sudo gitlab-rake gitlab:backup:restore BACKUP=1500809139

從默認備份恢復(fù)(backups目錄下只有一個備份文件時):

sudo gitlab-rake gitlab:backup:restore

啟動Gitlab

sudo gitlab-ctl start
sudo gitlab-ctl reconfigure

修改默認備份目錄【可選】

你也可以通過修改/etc/gitlab/gitlab.rb來修改默認存放備份文件的目錄:

gitlab_rails['backup_path'] = '/home/backup'

/home/backup修改為你想存放備份的目錄即可, 修改完成之后使用gitlab-ctl reconfigure命令重載配置文件即可。

問題與解決

安裝指定版本gitlab-ce

curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce=8.16.6-ce.0

參考鏈接:

  • https://about.gitlab.com/installation/#ubuntu
  • https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/trusty/gitlab-ce_8.16.6-ce.0_amd64.deb

重裝后訪問頁面出現(xiàn)500或502

在恢復(fù)數(shù)據(jù)時,提示版本不匹配,卸載、指定版本重裝后出現(xiàn)500或502錯誤,網(wǎng)上搜索了很多方法,都不解決問題,最終發(fā)現(xiàn)是卸載不徹底引起,完整的卸載方法為:

sudo gitlab-ctl stop
sudo apt-get --purge remove gitlab-ce
sudo rm -r /var/opt/gitlab
sudo rm -r /opt/gitlab
sudo rm -r /etc/gitlab

修改主機域名

sudo vi /etc/gitlab/gitlab.rb
external_url '你的網(wǎng)址'

閱讀原文 | 作者官網(wǎng) | 公眾號 | Feed | 訂閱 | 發(fā)私信

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容