ubuntu16的Gitlab安裝/卸載/備份/恢復/遷移

1. gitlab的安裝:html

直接參考官網文檔:https://about.gitlab.com/downloads/#ubuntu1604nginx

1.1 安裝配置依賴環境:git

sudo apt-get install curl openssh-server ca-certificates postfix

1.2 安裝Gitlab:web

可分如下兩種狀況:直接安裝最新版本和選擇安裝所需版本。redis

1.2.1 直接安裝最新版本:sql

若是沒有版本要求,選擇直接安裝最新便可。apache

#[-s去掉,可顯示下載的詳細信息]
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

sudo apt-get install gitlab-ce

1.2.2 選擇安裝所需版本:ubuntu

在gitlab遷移時,須要保證兩個gitlab之間版本一致,故gitlab遷移時最好選擇這種方式(雖然還能夠選擇將原始gitlab升級到最新版本,再將數據備份,而後遷移,但這樣風險太大,在升級過程當中可能會發生故障,致使數據丟失。因此儘可能不要動原始的gitlab,先進行數據備份,而後選擇安裝一個和舊版本一致gitlab進行安裝,再作數據遷移;遷移以後能夠再選擇升級,即便新gitlab掛掉,還有一個可用的舊gitlab)。vim

首先查看舊gitlab版本(在gitlab運行狀態下)(參考:http://stackoverflow.com/questions/21068773/checking-of-gitlab-version):segmentfault

sudo gitlab-rake gitlab:env:info

上圖中間GitLab information中的版本即爲gitlab的版本。

[官網:http://docs.gitlab.com/omnibus/manual_install.html

https://packages.gitlab.com/gitlab/gitlab-ce

https://packages.gitlab.com/app/gitlab/gitlab-ce/search?q=8.11.5

]

在這裏拿gitlab8.11.5版本舉例說明:

========================================================[強勢的分隔線]---開始

========================================================[強勢的分隔線]

最近外網被qiang,選擇使用清華鏡像https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/

注意: gitlab-ce 鏡像僅支持 x86-64 架構

Debian/Ubuntu 用戶

首先信任 GitLab 的 GPG 公鑰:

curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null

再選擇你的 Debian/Ubuntu 版本,文本框中內容寫進 /etc/apt/sources.list.d/gitlab-ce.list

sudo vim /etc/apt/sources.list.d/gitlab_gitlab-ce.list

選擇Ubuntu的版本:

#Ubuntu 14.04 LTS
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu trusty main

#Ubuntu 16.04 LTS
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main

將鏡像站放到開始位置![此處演示的Ubuntu 14.04 LTS]

安裝 gitlab-ce:

sudo apt-get update
sudo apt-get install gitlab-ce=8.11.5-ce.0

========================================================[強勢的分隔線]

========================================================[強勢的分隔線]---結束

#[-s去掉,可顯示下載的詳細信息]
curl -s https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
sudo apt-get install gitlab-ce=8.11.5-ce.0

或者

ubuntu14中gitlab的鏡像安裝包:

https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/apt/packages.gitlab.com/gitlab/gitlab-ce/ubuntu/pool/trusty/main/g/gitlab-ce/

curl -LJO https://packages.gitlab.com/gitlab/gitlab-ce/packages/ubuntu/xenial/gitlab-ce-8.11.5.deb/download
dpkg -i gitlab-ce-8.11.5.deb

1.3 配置啓動gitlab: [Mark Fletcher 說,修改配置以後,須要從新執行該命令]

sudo gitlab-ctl reconfigure

查看服務狀態:

sudo gitlab-ctl status

中止服務:

gitlab-ctl stop

啓動服務:

gitlab-ctl start

檢查服務的日誌信息:

#查看全部服務的日誌信息
sudo gitlab-ctl tail
# 檢查redis的日誌
sudo gitlab-ctl tail redis
 
# 檢查postgresql的日誌
sudo gitlab-ctl tail postgresql
 
# 檢查gitlab-workhorse的日誌
sudo gitlab-ctl tail gitlab-workhorse
 
# 檢查logrotate的日誌
sudo gitlab-ctl tail logrotate
 
# 檢查nginx的日誌
sudo gitlab-ctl tail nginx
 
# 檢查sidekiq的日誌
sudo gitlab-ctl tail sidekiq
 
# 檢查unicorn的日誌
sudo gitlab-ctl tail unicorn

 

1.4 web登陸並配置:

瀏覽器地址中輸入http://[ip地址]。

若有其餘問題可參考:http://blog.csdn.net/discoverer100/article/details/51814171

2. gitlab卸載:[貌似有些版本很差使]

前提:必須在Gitlab運行狀態下才能卸載。

# Stop gitlab and remove its supervision process
sudo gitlab-ctl uninstall

# Debian/Ubuntu
sudo dpkg -r gitlab-ce

# Redhat/Centos
# sudo rpm -e gitlab-ce

3. 備份:(參考:http://www.javashuo.com/article/p-tnswkclv-cu.html

3.1 建立備份:

gitlab-rake gitlab:backup:create

命令會在/var/opt/gitlab/backups目錄下建立一個名稱相似爲1393513186_gitlab_backup.tar的壓縮包, 這個壓縮包就是Gitlab整個的完整部分, 其中開頭的1393513186是備份建立的日期.

注:該目錄,只能在gitlab中止運行狀態下,才能夠切換進去。

Gitlab 修改備份文件默認目錄

你也能夠經過修改/etc/gitlab/gitlab.rb來修改默認存放備份文件的目錄:

gitlab_rails['backup_path'] = '/mnt/backups'

/mnt/backups修改成你想存放備份的目錄便可, 修改完成以後使用gitlab-ctl reconfigure命令重載配置文件便可.

4. Gitlab 恢復:

# 中止相關數據鏈接服務
sudo gitlab-ctl stop unicorn
sudo gitlab-ctl stop sidekiq

# 從1393513186編號備份中恢復
sudo gitlab-rake gitlab:backup:restore BACKUP=1393513186

# 啓動Gitlab
sudo gitlab-ctl start

5. Gitlab遷移:

遷移如同備份與恢復的步驟同樣, 只須要將老服務器/var/opt/gitlab/backups目錄下的備份文件拷貝到新服務器上的/var/opt/gitlab/backups便可(若是你沒修改過默認備份目錄的話)。 而後執行上述恢復命令。

可是須要注意的是新服務器上的Gitlab的版本必須與建立備份時的Gitlab版本號相同. 好比新服務器安裝的是最新的7.60版本的Gitlab, 那麼遷移以前, 最好將老服務器的Gitlab 升級爲7.60在進行備份.

6. Gitlab服務器IP地址設置:

修改Gitlab服務器地址,讓其餘用戶能夠直接訪問。

修改gitlab.yml文件:( 該文件默認位於/opt/gitlab/embedded/service/gitlab-rails/config目錄之下)

以下圖(可參考:http://blog.csdn.net/yulei_qq/article/details/53134654):

重啓GitLab:

sudo gitlab-ctl restart
相關文章
相關標籤/搜索