天天看點

GitLab的安裝及使用教程

一 使用yum安裝

1、配置yum源

vim /etc/yum.repos.d/gitlab-ce.repo           

複制以下内容:

[gitlab-ce]

name=Gitlab CE Repository

baseurl=https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el$releasever/

gpgcheck=0

enabled=1

2、更新本地yum緩存

sudo yum makecache           
GitLab的安裝及使用教程

3、安裝GitLab社群版

sudo yum install gitlab-ce        #自動安裝最新版
sudo yum install gitlab-ce-x.x.x    #安裝指定版本           
GitLab的安裝及使用教程

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        # 檢視日志;

二 手動安裝           

1. 安裝配置依賴項

如想使用Postfix來發送郵件,在安裝期間請選擇’Internet Site’. 您也可以用sendmai或者 配置SMTP服務 并 使用SMTP發送郵件.

在 Centos 6 系統上, 下面的指令将在系統防火牆裡面開放HTTP和SSH端口. 

  1. sudo yum install curl openssh-server openssh-clients postfix cronie -y
  2. sudo service postfix start
  3. sudo chkconfig postfix on
  4. sudo lokkit -s http -s ssh

2. 添加GitLab倉庫,并安裝到伺服器上

  1. curl -sS http://packages.gitlab.cc/install/gitlab-ce/script.rpm.sh | sudo bash
  2. sudo yum install gitlab-ce

如果你不習慣使用指令管道的安裝方式, 你可以在這裡下載下傳 安裝腳本 或者 手動下載下傳您使用的系統相應的安裝包(RPM/Deb) 然後安裝

  1. wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-XXX.rpm
  2. rpm -ivh gitlab-ce-XXX.rpm

說明:個人平時喜歡采用如上方式的rpm安裝

centos (核心7.x)https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7

centos (核心6.x)https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el6,選擇需要的版本進行安裝。

老版本用習慣了,用的是一種情懷,有些功能新版本不是很喜歡用,請根據自己個人喜好來安裝。

三 GitLab使用

登入GitLab

1、在浏覽器的位址欄中輸入ECS伺服器的公網IP即可登入GitLab的界面,第一次登入使用的使用者名和密碼為 root 和 5iveL!fe。

GitLab的安裝及使用教程

2、首次登入會強制使用者修改密碼。密碼修改成功後,輸入新密碼進行登入。

四 注意事項以及異常故障排查:

1,按照該方式,我安裝了一個确實沒問題,隻不過是英文版。沒有經過漢化(漢化請參考後邊的教程)。

2,預設安裝登入需要重置root密碼。可以自己單獨設定一個複雜密碼後登入。

3,gitlab本身采用gitlab.example.com:80端口,如安裝前伺服器有啟用80,安裝完通路會報錯。需更改gitlab的預設端口。

修改vim /etc/gitlab/gitlab.rb:external_url 'http://localhost:90

如果就想用80端口,那沒問題。如果更改了端口,後邊可以自行調整nginx配置檔案進行nginx反向代理設定。

4,這裡可以綁定自己的gitlab的域名或者公網、内網IP替換localhost進行公網通路,具體根據自己的實際情況。安全起見,一般會将gitlab部署于内網。具體部署到哪裡,請根據自己的實際情況來定。(基于安全原因,這裡不建議設定公網IP進行暴露,可以通過nginx設定IP綁定進行return或者其他規則進行IP回避通路。)

本站測試gitlab位址域名為:gitlab.21yunwei.com

5,unicorn本身采用8080端口,如果你那裡沒有8080使用,可以後邊不用修改了。如安裝前伺服器有啟用8080,安裝完通路會報錯。需更改unicorn的預設端口:

修改 /etc/gitlab/gitlab.rb:

  1. unicorn['listen'] = '127.0.0.1'
  2. unicorn['port'] = 3000

每次重新配置,都需要執行sudo gitlab-ctl reconfigure  使之生效。

6,日志位置:/var/log/gitlab 可以進去檢視通路日志以及報錯日志等,供通路檢視以及異常排查。

gitlab-ctl tail #檢視所有日志

gitlab-ctl tail nginx/gitlab_access.log #檢視nginx通路日志

五 建立Project

1、安裝Git工具linux:安裝Git,使用自帶的源安裝。

yum install git           
GitLab的安裝及使用教程

2、生成密鑰檔案:使用ssh-keygen生成密鑰檔案.ssh/id_rsa.pub。

GitLab的安裝及使用教程
GitLab的安裝及使用教程

3.在GitLab的首頁中建立一個Project

GitLab的安裝及使用教程
GitLab的安裝及使用教程

4.添加ssh key導入步驟2中生成的密鑰檔案内容:

GitLab的安裝及使用教程
GitLab的安裝及使用教程

ssh key添加完成:

GitLab的安裝及使用教程

項目位址,該位址在進行clone操作時需要用到:

GitLab的安裝及使用教程

簡單配置

1、配置使用Git倉庫的人員姓名(以上海駐雲為例)

git config --global user.name "上海駐雲"            

2、配置使用Git倉庫的人員email,填寫自己的公司郵箱

git config --global user.email "[email protected]" 
           

3、克隆項目,在本地生成同名目錄,并且目錄中會有所有的項目檔案

git clone git@iZbp1h7fx16gkr9u4gk8v3Z:root/test.git
           
GitLab的安裝及使用教程

上傳檔案

1、進入到項目目錄

cd test/            

2、建立需要上傳到GitLab中的目标檔案

echo “test” >  /root/test.sh           

3、将目标檔案或者目錄拷貝到項目目錄下

cp /root/test.sh ./             
GitLab的安裝及使用教程

4、将test.sh檔案加入到索引中

git add test.sh            

5、将test.sh送出到本地倉庫

git commit -m “test.sh”           

6、将檔案同步到GitLab伺服器上

git push -u origin master 
           
GitLab的安裝及使用教程

7、在網頁中檢視上傳的test.sh檔案已經同步到GitLab中

GitLab的安裝及使用教程

六 gitlab中文漢化【如不清楚gitlab版本以及git,請不要操作,否則gitlab癱瘓!建議運維人員或者對gitlab比較熟悉的人操作】

(1)centos 6.x漢化步驟。【centos 7.x請檢視(2)步驟)】

1,克隆gitLab漢化倉庫

首先我們要确認下目前我們gitlab的版本,檢視版本指令如下:

  1. [root@21yunwei src]# cat /opt/gitlab/embedded/service/gitlab-rails/VERSION
  2. 8.8.5

比如我安裝的gitlab版本是8.8.5,那麼我就需要下載下傳這個版本的更新檔。

克隆漢化倉庫位址(這個比較全,可以自己切換對應分支):

  1. git clone https://gitlab.com/larryli/gitlab.git

下載下傳完以後進入gitlab檢視更新檔版本:

  1. [root@21yunwei src]# cat gitlab/VERSION

版本正确,後邊可以正式操作了。

PS:有很多朋友安裝了或舊或老版本,不同版本的位址可以到https://gitlab.com/larryli/gitlab/tags 進行下載下傳,這裡的版本很全,基本可以滿足下載下傳使用,僅僅版本不一樣而已,其他後續操作都是一樣的。

2,漢化操作

停止目前gitlab運作。

  1. gitlab-ctl stop

執行如下操作:

  1. cd /usr/local/src/gitlab #說明:這個就是剛才我們git clone以後的目錄,需要進入到這個倉庫進行操作。
  2. git diff origin/8-8-stable origin/8-8-zh > /tmp/8.8.diff

說明:8-8-stable是英文穩定版,8-8-zh是中文版,兩個倉庫git diff結果便是漢化更新檔了。

3,應用漢化。

  1. cd /opt/gitlab/embedded/service/gitlab-rails
  2. git apply /tmp/8.8.diff

啟動gitlab:

  1. gitlab-ctl start

漢化效果(示範位址gitlab.21yunwei.com):

(2)centos 7.x漢化步驟。

1,下載下傳更新檔。這個沒有采用larryli的,而是另外一個安裝包。larrili測試在centos7有報錯。

  1. git clone https://git.oschina.net/qiai365/gitlab-L-zh.git

2,切換分支。這裡centos7測試的是8.5.4低版本,需要進行切換。

  1. cd gitlab-L-zh
  2. git checkout -b 8-5-zh origin/8-5-zh
  3. cp -r /opt/gitlab/embedded/service/gitlab-rails{,.ori}

3,漢化操作

首先停止gitlab:

漢化操作:

  1. yes|cp -rf ../gitlab-L-zh/* /opt/gitlab/embedded/service/gitlab-rails/

4,啟動,檢視效果

低版本gitlab預設使用者名和密碼:root/5iveL!fe