1. 程式人生 > >GitLab的安裝及使用教程

GitLab的安裝及使用教程

不同 china baseurl openssh etc 註意事項 反向代理設置 替換 OS

一 使用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
技術分享圖片 3、安裝GitLab社區版
sudo yum install gitlab-ce        #自動安裝最新版
sudo yum install gitlab-ce-x.x.x    #安裝指定版本
技術分享圖片 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。 技術分享圖片 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
技術分享圖片 2、生成密鑰文件:使用ssh-keygen生成密鑰文件.ssh/id_rsa.pub。 技術分享圖片 技術分享圖片 3.在GitLab的主頁中新建一個Project 技術分享圖片 技術分享圖片 4.添加ssh key導入步驟2中生成的密鑰文件內容: 技術分享圖片 技術分享圖片 ssh key添加完成: 技術分享圖片 項目地址,該地址在進行clone操作時需要用到: 技術分享圖片 簡單配置 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
技術分享圖片 上傳文件 1、進入到項目目錄
cd test/ 
2、創建需要上傳到GitLab中的目標文件
echo “test” >  /root/test.sh
3、將目標文件或者目錄拷貝到項目目錄下
cp /root/test.sh ./  
技術分享圖片 4、將test.sh文件加入到索引中
git add test.sh 
5、將test.sh提交到本地倉庫
git commit -m “test.sh”
6、將文件同步到GitLab服務器上
git push -u origin master 
技術分享圖片 7、在網頁中查看上傳的test.sh文件已經同步到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
  2. 8.8.5

版本正確,後邊可以正式操作了。
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. gitlab-ctl stop

漢化操作:

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

4,啟動,查看效果

  1. gitlab-ctl start

技術分享圖片

低版本gitlab默認用戶名和密碼:root/5iveL!fe

GitLab的安裝及使用教程