CentOS 7手把手教你搭建gitlab環(huán)境

????????在開篇之前梳理下gitlab遇到的問題,最近項目代碼管理,gitlab安裝完成之后發(fā)現訪問出現502,雖然解決了,覺得還是有必要把遇到的記錄下來,所謂,好記性不如爛筆頭,踩坑多了就是成長。

什么是GitLab?

????????GitLab是由GitLabInc.開發(fā),使用MIT許可證的基于網絡的Git倉庫管理工具,且具有wiki和issue跟蹤功能。使用Git作為代碼管理工具,并在此基礎上搭建起來的web服務。
????????GitLab由烏克蘭程序員DmitriyZaporozhets和ValerySizov開發(fā),它使用Ruby語言寫成。后來,一些部分用Go語言重寫。截止2018年5月,該公司約有290名團隊成員,以及2000多名開源貢獻者。GitLab被IBM,Sony,JülichResearchCenter,NASA,Alibaba,Invincea,O’ReillyMedia,Leibniz-Rechenzentrum(LRZ),CERN,SpaceX等組織使用。

??????在我們開始之前我們先來更新下我們系統(tǒng),這個可有可無,我這個是最小安裝

一,更新系統(tǒng)

yum update -y

????????這個執(zhí)行中間可能會需要5到10分鐘左右,根據自己的網速快慢來決定執(zhí)行的快慢,大家只需要耐心等待下就好了

在這里插入圖片描述

二,安裝sshd

2.1 安裝sshd依賴

yum install -y curl policycoreutils-python openssh-server
在這里插入圖片描述

2.2 接下來我們啟用并啟動 sshd:

systemctl enable sshd
systemctl start sshd

2.3 接下來我們配置下防火墻:

???????打開 /etc/sysctl.conf 文件,在文件最后添加新的一行

net.ipv4.ip_forward = 1
在這里插入圖片描述
???????我們只需要sysctl.conf在最后添加一行,按下esc 加:wq 保存即可

2.4 啟用并啟動防火墻:

systemctl enable firewalld
systemctl start firewalld
????這里由于是演示,我這里就把http放行
firewall-cmd --permanent --add-service=http

2.5 重啟防火墻:

systemctl reload firewalld
以上操作步驟:

[圖片上傳失敗...(image-3f3611-1599837695676)]

三,接下來我們在安裝 postfix

???????GitLab 需要使用 postfix 來發(fā)送郵件。當然,也可以使用 SMTP 服務器。

3.1 安裝postfix

yum install -y postfix
?????打開 /etc/postfix/main.cf 文件,在第 119 行附近找到 inet_protocols = all,將 all 改為 ipv4
inet_protocols = ipv4
在這里插入圖片描述

3.2 啟用并啟動 postfix:

systemctl enable postfix 
systemctl start postfix

3.3 配置 swap 交換分區(qū)

???????由于 GitLab 較為消耗資源,我們需要先創(chuàng)建交換分區(qū),以降低物理內存的壓力。 在實際生產環(huán)境中,如果服務器配置夠高,則不必配置交換分區(qū)。

3.4 新建 2 GB 大小的交換分區(qū):

dd if=/dev/zero of=/root/swapfile bs=1M count=2048

3.5 接下來我們對其格式化

mkswap /root/swapfile
swapon /root/swapfile
在這里插入圖片描述
??????添加自啟用。打開 /etc/fstab 文件,在文件最后添加新的一行
/root/swapfile swap swap defaults 0 0
在這里插入圖片描述

四,接下里我們安裝git

4.1 安裝 GitLab

將軟件源修改為國內源 由于網絡環(huán)境的原因,將 repo 源修改為清華大學 。

在 /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

4.2 修改完 yum 源,因此先重新生成緩存:

(此步驟執(zhí)行時間較長,一般需要 3~5 分鐘左右,請耐心等待)

yum makecache

4.3 安裝 GitLab:

(此步驟執(zhí)行時間較長,一般需要 3~5 分鐘左右,請耐心等待)

yum install -y gitlab-ce
在這里插入圖片描述

在這里插入圖片描述

五, 初始化 GitLab

5.1 配置 GitLab 的域名(非必需)
???????打開 /etc/gitlab/gitlab.rb 文件,在第 13 行附近找到 external_url 'http://gitlab.example.com',將單引號中的內容改為自己的域名(帶上協(xié)議頭,末尾無斜杠)
external_url 'http://119.29.102.85'
在這里插入圖片描述

5.2 初始化 GitLab ==特別重要!==

使用如下命令初始化 GitLab:

(此步驟執(zhí)行時間較長,一般需要 5~10 分鐘左右,請耐心等待)

sudo gitlab-ctl reconfigure
在這里插入圖片描述

在這里插入圖片描述
當看到這個就說明我們gitlab已經安裝成功了。
5.3 啟動成功之后我們通過瀏覽器訪問下
在這里插入圖片描述

在這里插入圖片描述
當我們看到進入我們就可以對我們代碼進行管理了。

回到我們開始的話題,有些朋友安裝成功后看到的界面可能是這個


在這里插入圖片描述

這種情況出現的原因:

????原因1、8080端口被tomcat占用
????????解決辦法:更換端口

????安裝tomcat默認的是8080端口,netstat -ntpl查看端口情況
[圖片上傳失敗...(image-9a8962-1599837695676)]
??????最簡單的方式我們就是把8080端口kill掉,然后改下端口號
為了避免8080端口沖突問題,可以修改下的默認端口,vim打開/etc/gitlab/gitlab.rb配置文件

執(zhí)行重新啟動

sudo gitlab-ctl reconfigure
sudo gitlab-ctl stop
sudo gitlab-ctl start

相關操作

啟動服務:gitlab -ctl start
查看狀態(tài):gitlab -ctl status
停掉服務:gitlab -ctl stop
重啟服務:gitlab -ctl restart
讓配置生效:gitlab -ctl reconfigure

????????原因2、gitlab占用內存太多,導致服務器崩潰。尤其是使用阿里云服務器最容易出現502

?????????解決辦法:默認情況下,主機的swap功能是沒有啟用的,解決辦法是啟動swap分區(qū),就是我們上面啟用的這里就不再過多解釋了

???????以上就是我們今天的教程,如果本文對你有所幫助,歡迎關注點贊,分享給您身邊的朋友。您的鼓勵就是對我的最大動力。

?著作權歸作者所有,轉載或內容合作請聯系作者
【社區(qū)內容提示】社區(qū)部分內容疑似由AI輔助生成,瀏覽時請結合常識與多方信息審慎甄別。
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發(fā)布,文章內容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

友情鏈接更多精彩內容