GitLab安裝及備份遷移數據


centos7安裝GitLab

下載相應版本rpm包

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/
我此處下載9.3.6版本。

# wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-9.3.6-ce.0.el7.x86_64.rpm
# yum -y install gitlab-ce-9.3.6-ce.0.el7.x86_64.rpm

更改倉庫地址及訪問

# cd /etc/gitlab/
# egrep -v "^$|^#" gitlab.rb 
external_url 'http://gitlab.xxxx.com'
git_data_dirs({ "default" => { "path" => "/xxx/gitlab/git-data", 'gitaly_address' => 'unix:/var/opt/gitlab/gitaly/gitaly.socket' } })

生效配置

#使配置生效
# gitlab-ctl reconfigure
#啟動GitLab 
# gitlab-ctl start

默認nginx端口是80,如果有占用,需要更改.
輸入ip或者域名可以訪問到git,第一次訪問需要更改密碼。

GitLab常用命令

sudo gitlab-ctl start    # 啟動所有 gitlab 組件;
sudo gitlab-ctl stop        # 停止所有 gitlab 組件;
sudo gitlab-ctl restart        # 重啟所有 gitlab 組件;
sudo gitlab-ctl status        # 查看服務狀態;
sudo gitlab-ctl reconfigure        # 啟動服務;
sudo vim /etc/gitlab/gitlab.rb        # 修改默認的配置文件;
gitlab-rake gitlab:check SANITIZE=true --trace    # 檢查gitlab;
sudo gitlab-ctl tail        # 查看日志;

git數據遷移

高版本的Gitlab無法恢復低版本備份的數據,需要注意在b服務器部署和a服務器一樣版本的gitlab,部署好環境后開始備份和數據遷移.

查看gitlab版本的命令

# gitlab-rake gitlab:env:info

備份原a服務器上的的數據

# gitlab-rake gitlab:backup:create RAILS_ENV=production

PS: 備份后的文件一般是位於/var/opt/gitlab/backups下, 自動生成文件名文件名如1481529483_gitlab_backup.tar

將步驟2生成的tar文件拷貝到b服務器上相應的backups目錄下

可以利用scp進行直接拷貝.

# scp username@src_ip:/var/opt/gitlab/backups/1481529483_gitlab_backup.tar /var/opt/gitlab/backups

PS: username為原服務器的用戶名,src_ip原服務器IP地址

在b服務器恢復數據

# gitlab-rake gitlab:backup:restore RAILS_ENV=production BACKUP=1481529483

PS:BACKUP的時間點必須與原服務器備份后的文件名一致

恢復完之后訪問薪git,可以看到數據跟老git完全一致!


免責聲明!

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



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