gitlab 存儲倉庫目錄設置及數據遷移


設置存儲倉庫數據

默認情況下omnibus-gitlab 將倉庫數據存儲在 /var/opt/gitlab/git-data目錄下,倉庫存放在子目錄 repositories里面。 以可以通過修改/etc/gitlab/gitlab.rb 的這一行來自定義 git-data 的父目錄

#  vim /etc/gitlab/gitlab.rb 
# 把注釋取消然后指定新的倉庫存儲位置,需要事先創建好該目錄
git_data_dirs({
   "default" => {
     "path" => "/server/gitlab-data"
    }
 })

注: /server/gitlab-data 是新創建的目錄,目標路徑和其子路徑必須不能為軟鏈接。

設置生效

在沒有數據的情況下

[root@gitlab ~]#  gitlab-ctl stop
[root@gitlab ~]# gitlab-ctl reconfigure //使修改生效

在有數據的情況下

如果 /var/opt/gitlab/git-data 目錄已經存在Git倉庫數據, 可以用下面的命令把數據遷移到新的位置

# 准備遷移之前要停止GitLab服務,防止用戶寫入數據。
[root@gitlab ~]# gitlab-ctl stop
 
# 注意 'repositories'后面不帶斜杠,而'/server/gitlab-data'后面是有斜杠的。
[root@gitlab ~]# rsync -av /var/opt/gitlab/git-data/repositories /server/gitlab-data/
 
# 如果需要修復權限設置,
# 可運行下面的命令進行修復。
[root@gitlab ~]# gitlab-ctl reconfigure
 
# 再次檢查下 /server/gitlab-data 的目錄. 正常情況應該有下面這個子目錄:
# repositories
 
[root@gitlab ~]# ls /server/gitlab-data/
repositories
# 完工! 啟動GitLab,驗證下是否能
# 通過web訪問Git倉庫。
[root@gitlab ~]# gitlab-ctl start

設置存儲倉庫數據的備用目錄

自GitLab 8.10開始,可以通過在/etc/gitlab/gitlab.rb文件中添加下面的幾行配置, 來增加多個 git 數據存儲目錄。

git_data_dirs({
  "default" => { "path" => "/var/opt/gitlab/git-data" },  //默認存儲目錄
  "alternative" => { "path" => " /server/gitlab-data" }     //備用存儲目錄
})

備用目錄,顧名思義應該是第一個目錄滿了或者出錯就會使用備用目錄,正常就是滿了


免責聲明!

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



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