CentOS7.x 搭建 GitLab 教程


 

今天閑來無事,想起之前買了一個阿里雲 ECS,一直閑置着沒用,一時興起就想搭個自己的 GitLab 玩玩,GitLab 官網也提供了安裝教程,很簡單,照着步驟一步步基本沒什么問題,可能安裝的過程中有一些坑需要自己去解決。

1.安裝 GitLab

打開 GitLab 官網 https://www.gitlab.com.cn/installation/#centos-7

根據自己的系統選擇,我們選擇 CentOS7

這里寫圖片描述

首先,安裝並配置必要的依賴關系,確保打開防火牆的 SSH 和 HTTP 的訪問,如果沒有,需要您輸入下面命令打開

sudo yum install -y curl policycoreutils-python openssh-server
sudo systemctl enable sshd
sudo systemctl start sshd
sudo firewall-cmd --permanent --add-service=http
sudo systemctl reload firewalld

接下來安裝 Postfix 發送郵件通知服務,或者如果您想使用其他方式(SMTP)來發送電子郵件,請跳過此步驟,並在安裝了 GitLab 之后配置一個外部SMTP服務器。

sudo yum install postfix
sudo systemctl enable postfix
sudo systemctl start postfix

添加 GitLab 包倉庫並安裝包

curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash

接下來,安裝 GitLab 包,將 “http://gitlab.example.com” 更改為您想要訪問 GitLab 的URL,安裝將自動配置並在使用該 URL 來訪問 GitLab,HTTPS 需要安裝完成后來配置。

溫馨提示:此處如果設置為域名訪問,如果域名沒有備案就會出現無法訪問,如果不想備案網站域名,那么此處直接配置為服務器的公網 IP 即可。

因為我配置的是域名,因為我的域名沒有備案,所以我訪問的時候提示我備案域名,如下圖:

這里寫圖片描述

配置完成后就開始下載並安裝,過程大概會持續一個小時左右,視服務器具體帶寬而定。

如果 GitLab 已經安裝完成,並且你已經配置了域名想要修改配置變成 ip,按如下步驟執行命令:

vim  /etc/gitlab/gitlab.rb

找到 external_url 設置為你的 IP + 端口即可,注意這里設置的端口不能被占用,默認是 8080 端口,如果 8080 已經使用,請自定義其它端口,並在防火牆設置開放相對應的端口。

然后重置並啟動 GitLab 執行:

gitlab-ctl reconfigure
gitlab-ctl restart

然后執行:

gitlab-ctl status

查看 GitLab 運行狀態是否正常

訪問 GitLab 頁面:

輸入你配置的ip或者域名來訪問 GitLab,如果沒有什么異常,會出現如下頁面

這里寫圖片描述

第一次訪問會提示修改密碼,你需要按提示修改即可,默認賬戶名是 root

至此,GitLab 的安裝就算完啦。

2.配置 postfix 郵件服務

發郵件系統我們用 Postfix,SMTP 系統默認是開啟的,我們先設置關閉 SMTP,開啟 Postfix

關閉 SMTP:

vim /etc/gitlab/gitlab.rb

找到 #gitlab_rails['smtp_enable'] = true

改為 gitlab_rails['smtp_enable'] = false

修改后執行

gitlab-ctl reconfigure

另一種是關閉 Postfix,設置開啟 SMTP,相關教程請參考官網

https://doc.gitlab.cc/omnibus/settings/smtp.html

此處以配置 163 郵箱為例:

gitlab_rails[‘smtp_enable’] = true 
gitlab_rails[‘smtp_address’] = “smtp.163.com” 
gitlab_rails[‘smtp_port’] = 25 
gitlab_rails[‘smtp_user_name’] = “xxx@163.com” 
gitlab_rails[‘smtp_password’] = “xxx” 
gitlab_rails[‘smtp_domain’] = “163.com” 
gitlab_rails[‘smtp_authentication’] = :login 
gitlab_rails[‘smtp_enable_starttls_auto’] = true
gitlab_rails[‘gitlab_email_from’] = “xxx@163.com” 
user[“git_user_email”] = “xxx@163.com

登錄到 GitLab 並添加一個 GitLab 賬戶,並添加設置用戶的郵箱地址,測試是否可以收到郵件通知,如果創建完成,設置的郵箱收到郵件說明郵件服務沒有問題,注意如果沒有收到郵件,有時候郵箱會攔截郵件,你在垃圾郵件中看看是否郵件被攔截,如果被攔截,你可以將此郵件添加到白名單中。

3.其他異常情況處理

另外,如果 訪問 GitLab 時的速度非常慢,或者報 502 錯誤,如下圖

這里寫圖片描述

可能是你的服務器配置太低,GitLab 官方建議裝 GitLab 的服務器的配置最低要求為:CPU 2核心 + 4GB可用內存(RAM + Swap)。 如果服務器配置過低,可能導致您訪問 GitLab的速度過慢,甚至會出現無響應等狀況。

提示 FirewallD is not running 說明防火牆未開啟,

執行 systemctl status firewalld

如果出現 Active: inactive (dead) 表示防火牆未開啟。

開啟防火牆 systemctl start firewalld

再次查看防火牆狀態,如果出現 Active: active (running) 表示防火牆開啟成功。

歡迎關注我的微信公眾號:

這里寫圖片描述


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM