Gitlab服務(wù)器搭建

一、GitLab基礎(chǔ)概念:

  • 它是一個(gè)開(kāi)源的git倉(cāng)庫(kù)服務(wù)器。用于實(shí)現(xiàn)代碼集中托管。
  • 分為企業(yè)版和CE社區(qū)版。
  • 部署方式:軟件包部署、容器部署。

二、通過(guò)容器部署gitlab服務(wù)器

第一步:準(zhǔn)備環(huán)境

  • 配置ip及yum環(huán)境
  • 安裝容器podman軟件
# 安裝容器管理軟件podman
[root@gitlab ~]# yum install -y podman
  • 修改gitlab服務(wù)器的ssh端口號(hào)。
  • 因?yàn)間itlab容器也要用到22端口,有沖突。
# +17是打開(kāi)文件時(shí),光標(biāo)直接定位到第17行。
# 將ssh的端口修改為2022
[root@gitlab ~]# vim +17 /etc/ssh/sshd_config 
17 Port 2022

# 重啟sshd服務(wù)生效配置
[root@gitlab ~]# systemctl restart sshd

# ssh連接退出,再登陸時(shí),需要指定端口號(hào)
[root@develop ~]# ssh -p2022 192.168.4.20

第二步:導(dǎo)入gitlab鏡像

# 導(dǎo)入鏡像。
# 一個(gè)鏡像可以創(chuàng)建很多容器。
# 鏡像是只讀的,容器是可以改變的。
# 容器相當(dāng)于是精簡(jiǎn)的虛擬機(jī),可以像虛擬機(jī)一樣,對(duì)外提供服務(wù)。
[root@gitlab ~]# podman load < gitlab_zh.tar
  • 容器如果出現(xiàn)故障,首先的排錯(cuò)方法是重啟它;如果無(wú)效,刪掉重建。
  • 為了刪容器,不丟失數(shù)據(jù),需要把容器需要的數(shù)據(jù)保存在宿主機(jī)上。
# 在哪臺(tái)主機(jī)上啟動(dòng)容器,哪臺(tái)主機(jī)就是宿主機(jī)。
# 在gitlab服務(wù)器上創(chuàng)建用于保存容器數(shù)據(jù)的目錄
[root@gitlab ~]# mkdir -p /srv/gitlab/{config,logs,data}
[root@gitlab ~]# ls /srv/gitlab/
config data logs

# gitlab容器需要/etc/resolv.conf文件。不存在則創(chuàng)建它
[root@gitlab ~]# touch /etc/resolv.conf

第三步:創(chuàng)建容器

  • podman run創(chuàng)建容器
# -d后臺(tái)運(yùn)行。
# -h gitlab設(shè)置容器的主機(jī)名。
# --name gitlab是podman ps查看到的容器名;
# -p指定發(fā)布的端口號(hào),當(dāng)訪問(wèn)宿主機(jī)443/80/22端口時(shí),這樣的請(qǐng)求就發(fā)給容器的相關(guān)端口;
# --restart always是開(kāi)機(jī)自啟;
# -v是映射路徑,將容器中指定的路徑,映射到宿主機(jī),以便保存容器產(chǎn)生的數(shù)據(jù);
# 最后的gitlab_zh是鏡像名。(沒(méi)有.tar)
[root@gitlab ~]# podman run \
-d -h gitlab --name gitlab \
-p 443:443 -p 80:80 -p 22:22  \
--restart always -v /srv/gitlab/config:/etc/gitlab  \
-v /srv/gitlab/logs:/var/log/gitlab \
-v /srv/gitlab/data:/var/opt/gitlab gitlab_zh

# 設(shè)置gitlab容器開(kāi)機(jī)自啟
# --restart always在podman中可能無(wú)效
[root@gitlab ~]# vim /etc/rc.d/rc.local   
... ...
# 在文件尾部追加一行內(nèi)容如下:
podman start gitlab
# 給到文件執(zhí)行權(quán)限
[root@gitlab ~]# chmod +x /etc/rc.d/rc.local
  • 查看容器
[root@gitlab ~]# podman ps
# 如果一切正常,幾分鐘后,可以訪問(wèn)http://192.168.88.20/ 
# 以自己gitlab服務(wù)器的ip為準(zhǔn)
  • 附:如果容啟動(dòng)失敗,再次創(chuàng)建有以下錯(cuò)誤:
Error: error creating container storage: 
the container name "gitlab" is already in use by "ca425e33d7ff2給i他
d282cbec1033023851cff285fe9b819ed50d47a08a875372fde".
 You have to remove that container to be able to reuse that name.:
 that name is already in use
  • 則可以將容器進(jìn)行刪除,重新進(jìn)行創(chuàng)建:
# 刪除gitlab
[root@gitlab ~]# podman rm gitlab

# 重新創(chuàng)建容器
[root@gitlab ~]# podman run 
-d -h gitlab --name gitlab 
-p 443:443 -p 80:80 -p 22:22 
--restart always -v /srv/gitlab/config:/etc/gitlab 
-v /srv/gitlab/logs:/var/log/gitlab 
-v /srv/gitlab/data:/var/opt/gitlab gitlab_zh

第四步:web端配置gitlab

  • 第一次登陸時(shí),要求改密碼。密碼需要是復(fù)雜密碼,如1234.com。修改之后,登陸的用戶名是root。

配置外觀

自定義外觀1.png

自定義外觀2.png
  • 點(diǎn)擊下面的保存后,LOGO圖標(biāo)將會(huì)改變。退出后,登陸界面也會(huì)有變化。


    自定義外觀3.png

創(chuàng)建用戶

  • 用戶:為使用gitlab的用戶創(chuàng)建的賬號(hào)。
  • 創(chuàng)建用戶1.png
  • 填寫(xiě)截圖上的幾項(xiàng)后,其他使用默認(rèn)配置,點(diǎn)保存。
  • 創(chuàng)建好用戶后,點(diǎn)擊編輯,可以為他/她設(shè)置密碼:


    創(chuàng)建用戶2.png
  • 保存修改后,退出當(dāng)前賬號(hào),使用新賬號(hào)登陸測(cè)試。第一次登陸時(shí),也是要求修改密碼,新密碼可以設(shè)置與舊密碼一樣。新建的jerry用戶因?yàn)闄?quán)限較小,所以看到的界面,沒(méi)有root的功能多。

創(chuàng)建組

  • 注意,創(chuàng)建組需要使用root賬號(hào)


    創(chuàng)建組1.png
  • 將jerry加到develop2組中,角色是“主程序員”


    創(chuàng)建組2.png
  • 設(shè)置可見(jiàn)等級(jí):公開(kāi)


    創(chuàng)建組3.png

創(chuàng)建項(xiàng)目

創(chuàng)建項(xiàng)目1.png
  • 設(shè)置可見(jiàn)等級(jí):公開(kāi)


    創(chuàng)建項(xiàng)目2.png
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容