一.? ?環(huán)境準備
操作系統(tǒng):centos7(minimal瑟幕,www.centos.org下載的包是CentOS-7-x86_64-Minimal-1708.iso)
CPU:2核
? 內(nèi)存:6G
1.1? ?更換阿里yum(個人習(xí)慣)
步驟:
1)下載wget
Yum install -y wget
2)備份默認的yum
??????? mv/etc/yum.repos.d /etc/yum.repos.d.backup
3)設(shè)置新的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)升級所有包(改變軟件設(shè)置和系統(tǒng)設(shè)置,系統(tǒng)版本內(nèi)核都升級乃戈,故需要幾分鐘耐心等待)
?? 1.2安裝vim(個人習(xí)慣)
??? yuminstall -y vim
二.獲取gitlab漢化包(要部署非漢化版,可以跳過這一塊內(nèi)容)
?? 2.1安裝git
????? yuminstall -y git
?? 2.2克隆獲取漢化版本庫
????? 下載最新的漢化包
????? gitclonehttps://gitlab.com/xhang/gitlab.git
????? 如果是要下載老版本的漢化包司浪,需要加上老版本的分支返敬,比如今天已經(jīng)是10.0.4,我依舊想下載10.0.2乒融,可以運行下面的語句
????? gitclone https://gitlab.com/xhang/gitlab.git -b v10.0.2-zh
?? 2.3查看該漢化補丁的版本
?????? catgitlab/VERSION
三.部署社區(qū)版gitlab
3.1安裝gitlab的依賴
yum install -ycurl openssh-server openssh-clients postfix cronie policycoreutils-python
//10.x以后開始依賴policycoreutils-python, 9.x時還沒有依賴該項。
3.2啟動postfix簇抵,并設(shè)為開機啟動
??systemctlstart postfix
systemctl enable postfix
注:通過systemctl
status firewalld查看firewalld狀態(tài)庆杜,發(fā)現(xiàn)當(dāng)前是dead狀態(tài),即防火墻未開啟碟摆。通過systemctl start firewalld開啟防火墻晃财,沒有任何提示即開啟成功。
3.3 設(shè)置防火墻
?? firewall-cmd--add-service=http --permanent
firewall-cmd –reload
注:啟動postfix的時候報錯:vim
/etc/postfix/main.cf的設(shè)置
inet_protocols = ipv4
inet_interfaces = all
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目錄下钢猛。
? 說明:從下載速度和方便程度來說,走清華的鏡像站的方式更優(yōu)轩缤,但是我2017/10/20想下載gitlab10.0.4時命迈,發(fā)現(xiàn)清華的鏡像站最新只有10.0.3,故在增補“途徑2”獲取最新的安裝包火的。
??3.5安裝rpm包
????? rpm-i gitlab-ce-10.0.2-ce.0.el7.x86_64.rpm
根據(jù)提示,繼續(xù)執(zhí)行指令配置gitlab
gitlab-ctl reconfigure
注:在卸載gitlab然后再次安裝執(zhí)行sudo
gitlab-ctl reconfigure的時候往往會出現(xiàn):ruby_block[supervise_redis_sleep]
action run壶愤,會一直卡無法往下進行!
解決方案:
1馏鹤、按住CTRL+C強制結(jié)束征椒;
2、運行:sudo systemctl restart
gitlab-runsvdir湃累;
3勃救、再次執(zhí)行:sudo gitlab-ctl reconfigure
3.6 修改配置文件gitlab.rb
vim/etc/gitlab/gitlab.rb
將external_url變量的地址修改為gitlab所在centos的ip地址。
因為修改了配置文件治力,故需要重新加載配置內(nèi)容蒙秒。
gitlab-ctlreconfigure
gitlab-ctlrestart
3.7 查看gitlab版本
?? head-1 /opt/gitlab/version-manifest.txt
四.覆蓋漢化包
?? 4.1停止gitlab服務(wù)
?? gitlab-ctlstop
?? 4.2切換到gitlab漢化包所在的目錄(即步驟二獲取的漢化版gitlab)
cd /root/gitlab
?? 4.3?比較漢化標(biāo)簽和原標(biāo)簽,導(dǎo)出 patch 用的 diff 文件到/root下
?????? gitdiff v10.0.2 v10.0.2-zh > ../10.0.2-zh.diff
4.4 回到/root目錄
?? Cd
4.5 將10.0.2-zh.diff作為補丁更新到gitlab中
??yuminstall patch -y
patch -d /opt/gitlab/embedded/service/gitlab-rails -p1 <10.0.2-zh.diff
?? 4.6啟動gitlab
????? gitlab-ctlstart
?? 4.7重新配置gitlab
????? gitlab-ctlreconfigure
五.設(shè)置管理員密碼
??? 管理員賬號登錄的用戶名:root
?? (雖然登錄后管理員的用戶名為Administrator琴许,但是實際登錄的用戶名是root)
方法一:網(wǎng)頁方式
?? 瀏覽器訪問gitlab所在的ip税肪,輸入密碼后點擊 “Change your password”(如果進行漢化溉躲,點擊“修改密碼”)榜田。
方法二:指令方式
?? gitlab-railsconsole production
?稍等一會后會出現(xiàn)
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???????????????????????????????????????????????//退出