1. 程式人生 > >CentOS 7 安裝GitLab中文版

CentOS 7 安裝GitLab中文版

一、環境準備

      作業系統:centos7(minimal,www.centos.org下載的包是CentOS-7-x86_64- Minimal-1708.iso)

      CPU:2核

      記憶體:6G

      1.1 更換阿里yum(個人習慣)

步驟:

     1)下載wget         

yum install -y wget

      2)備份預設的yum

mv /etc/yum.repos.d /etc/yum.repos.d.backup

      3)設定新的yum目錄

mkdir /etc/yum.repos.d

      4)下載阿里yum配置到該目錄中

wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

       5)重建快取

yum clean all
yum makecache

       6)升級所有包(改變軟體設定和系統設定,系統版本核心都升級,故需要幾分鐘耐心等待)

yum update -y

1.2 安裝vim(個人習慣)

yum install -y vim

二、獲取gitlab漢化包(要部署非漢化版,可以跳過這一塊內容)

說明:gitlab中文社群版的專案,v7-v8.8是由Larry Li發起的“GitLab 中文社群版專案”(https://gitlab.com/larryli/gitlab),從 v8.9 之後,@xhang 開始繼續該漢化專案(https://gitlab.com/xhang/gitlab)。

 2.1 安裝git

yum install -y git

2.2 克隆獲取漢化版本庫

 下載最新的漢化包

git clone https://gitlab.com/xhang/gitlab.git

 如果是要下載老版本的漢化包,需要加上老版本的分支,比如今天已經是10.0.4,我依舊想下載10.0.2,可以執行下面的語句

git clone https://gitlab.com/xhang/gitlab.git -b v10.0.2-zh

 2.3 檢視該漢化補丁的版本

cat gitlab/VERSION 

我安裝的時候正好是國慶,最新的版本才剛出,所以漢化版為10.0.2,故我選擇原版也安裝10.0.2。

 


三、部署社群版gitlab

 3.1 安裝gitlab的依賴項

yum install -y curl openssh-server openssh-clients postfix cronie policycoreutils-python

  // 10.x以後開始依賴policycoreutils-python,我之前在使用9.x時還沒有依賴該項。

 3.2 啟動postfix,並設定為開機啟動 

systemctl start postfix
systemctl enable postfix

 3.3 設定防火牆 

firewall-cmd --add-service=http --permanent
firewall-cmd --reload

 3.4 獲取gitlab的rpm包

  途徑1:通過清華開源映象站

   檢視清華開源映象站,有我需要的10.0.2的rpm包。

   獲取rpm包 

wget https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/yum/el7/gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm

  途徑2:從官方獲取RPM包後上傳到/root目錄下

  官方下載:https://packages.gitlab.com/gitlab/gitlab-ce/

  因為要在centos7上安裝版本10.0.2的gitlab,故找到gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm下載到本地後,通過Bitvise SSH Client工具將rpm包上傳到gitlab虛擬機器的/root目錄下。

  說明:從下載速度和方便程度來說,走清華的映象站的方式更優,但是我2017/10/20想下載gitlab10.0.4時,發現清華的映象站最新只有10.0.3,故在增補“途徑2”獲取最新的安裝包。

   3.5 安裝rpm包

rpm -i gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm

  根據提示,繼續執行指令配置gitlab。 

gitlab-ctl reconfigure

 3.6 修改配置檔案gitlab.rb

vim /etc/gitlab/gitlab.rb

將external_url變數的地址修改為gitlab所在centos的ip地址。(因為我這臺centos是16.5,故配成圖中的地址)。

 

因為修改了配置檔案,故需要重新載入配置內容。

gitlab-ctl reconfigure
gitlab-ctl restart

3.7 檢視gitlab版本 

head -1 /opt/gitlab/version-manifest.txt

四、覆蓋漢化包

 4.1 停止gitlab服務

gitlab-ctl stop

 4.2 切換到gitlab漢化包所在的目錄(即步驟二獲取的漢化版gitlab) 

cd /root/gitlab

 4.3 比較漢化標籤和原標籤,匯出 patch 用的 diff 檔案到/root下 

git diff v10.0.2 v10.0.2-zh > ../10.0.2-zh.diff

 4.4 回到/root目錄

cd

 4.5 將10.0.2-zh.diff作為補丁更新到gitlab中 

yum install patch -y
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 < 10.0.2-zh.diff

 4.6 啟動gitlab

gitlab-ctl start

 4.7 重新配置gitlab 

gitlab-ctl reconfigure

五、設定管理員密碼

   管理員賬號登入的使用者名稱:root

   (雖然登入後管理員的使用者名稱為Administrator,但是實際登入的使用者名稱是root)

   

   方法一:網頁方式

   瀏覽器訪問gitlab所在的ip,輸入密碼後點擊 “Change your password”(如果進行漢化,點選“修改密碼”)。

 

 

  方法二:指令方式

gitlab-rails console production

  稍等一會後會出現

 

irb(main):001:0> user = User.where(id: 1).first     // id為1的是超級管理員
irb(main):002:0>user.password = 'yourpassword'      // 密碼必須至少8個字元
irb(main):003:0>user.save!                          // 如沒有問題 返回true
exit                                                // 退出