如何在 CentOS 8/7 上安裝和配置 GitLab?
GitLab 是一個開源平臺,允許您管理原始碼儲存庫並與團隊成員協作。使用 GitLab,您可以託管您的 Git 儲存庫、管理程式碼審查、自動化 CI/CD 管道等等。在本文中,我們將指導您完成在 CentOS 8/7 上安裝和配置 GitLab 的過程。
在我們開始安裝之前,您需要滿足一些先決條件 -
先決條件
具有至少 4GB RAM 和 2 個 CPU 核心的 CentOS 8/7 伺服器。
指向伺服器 IP 地址的域名。
域名的有效 SSL 證書。
一個 root 或 sudo 使用者帳戶。
步驟 1:更新系統
第一步是將系統軟體包更新到最新版本。您可以透過執行以下命令來實現 -
sudo yum update
步驟 2:安裝和配置依賴項
接下來,我們需要安裝 GitLab 正確執行所需的一些依賴項。執行以下命令來安裝它們 -
sudo yum install -y curl policycoreutils-python openssh-server openssh-clients
安裝完成後,我們需要配置防火牆以允許 SSH 和 HTTP 流量。執行以下命令來執行此操作 -
sudo firewall-cmd --permanent --add-service=http sudo firewall-cmd --permanent --add-service=https sudo systemctl reload firewalld
步驟 3:安裝 GitLab
現在我們準備安裝 GitLab 了。我們將使用官方的 GitLab Omnibus 軟體包來安裝 GitLab。執行以下命令下載並安裝 GitLab -
curl https://packages.gitlab.com/install/repositories/gitlab/gitlab-ee/script.rpm.sh | sudo bash sudo EXTERNAL_URL="https://your-domain-name.com" yum install -y gitlab-ee
將“your-domain-name.com”替換為您實際的域名。
安裝過程可能需要一些時間,具體取決於伺服器的速度和您的網際網路連線。安裝完成後,您將看到一條訊息,提示“GitLab 已安裝”。
步驟 4:配置 GitLab
現在 GitLab 已安裝,我們需要對其進行配置以使其正常工作。使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在此檔案中,您可以配置各種設定,例如 SMTP 伺服器、備份位置等等。目前,我們只配置外部 URL 和 SSL 證書。
在檔案中找到以下行 -
# external_url 'http://gitlab.example.com' # nginx['redirect_http_to_https'] = true # nginx['redirect_http_to_https_port'] = 80
取消第一行的註釋並將“http://gitlab.example.com”替換為您實際的域名。取消第二行和第三行的註釋以啟用 HTTP 到 HTTPS 的重定向。您的配置應如下所示 -
external_url 'https://your-domain-name.com' nginx['redirect_http_to_https'] = true nginx['redirect_http_to_https_port'] = 80
儲存並關閉檔案。
步驟 5:安裝 SSL 證書
GitLab 需要有效的 SSL 證書才能正常工作。如果您沒有 SSL 證書,可以從 Let's Encrypt 獲取免費證書。
首先,透過執行以下命令安裝 Certbot 客戶端 -
sudo yum install -y certbot python3-certbot-nginx
接下來,執行以下命令獲取 SSL 證書 -
sudo certbot --nginx -d your-domain-name.com
按照說明獲取 SSL 證書。證書安裝完成後,透過執行以下命令重新載入 nginx 配置 -
sudo gitlab-ctl reconfigure
步驟 6:訪問 GitLab
現在 GitLab 已安裝並配置完成,您可以透過在 Web 瀏覽器中導航到您的域名來訪問它。如果一切配置正確,您應該會看到 GitLab 登入頁面。
GitLab 的預設登入憑據為 -
Username: root Password: 5iveL!fe
我們建議您在登入 GitLab 後立即更改預設密碼。
步驟 7:配置 GitLab Runner
GitLab Runner 是一個應用程式,它響應 GitLab CI/CD 管道中的作業。預設情況下,GitLab Runner 未安裝在您的伺服器上。您可以按照官方文件進行安裝。
安裝 GitLab Runner 後,您需要將其註冊到 GitLab。在伺服器上開啟一個終端並執行以下命令 -
sudo gitlab-runner register
按照說明將 GitLab Runner 註冊到 GitLab。
以下是一些您可以採取的其他步驟來進一步配置和自定義您的 GitLab 安裝 -
配置 GitLab 備份
定期備份 GitLab 資料非常重要,以避免丟失任何寶貴資料。GitLab 提供了一個內建的備份實用程式,您可以將其配置為自動執行。為此,請使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在檔案中找到以下行 -
# gitlab_rails['backup_path'] = "/var/opt/gitlab/backups"
取消註釋該行並指定一個備份目錄。儲存並關閉檔案。
接下來,執行以下命令配置備份 -
sudo gitlab-ctl reconfigure
最後,執行以下命令建立 GitLab 資料的備份 -
sudo gitlab-rake gitlab:backup:create
配置 GitLab SMTP
GitLab 允許您配置 SMTP 設定,以便您可以從 GitLab 例項傳送電子郵件。為此,請使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在檔案中找到以下行 -
# gitlab_rails['smtp_enable'] = true # gitlab_rails['smtp_address'] = "smtp.gmail.com" # gitlab_rails['smtp_port'] = 587 # gitlab_rails['smtp_user_name'] = "user@gmail.com" # gitlab_rails['smtp_password'] = "password" # gitlab_rails['smtp_domain'] = "smtp.gmail.com" # gitlab_rails['smtp_authentication'] = "login" # gitlab_rails['smtp_enable_starttls_auto'] = true # gitlab_rails['smtp_tls'] = false
取消註釋這些行並將 SMTP 設定替換為您自己的設定。儲存並關閉檔案。
接下來,執行以下命令使用新的 SMTP 設定配置 GitLab -
sudo gitlab-ctl reconfigure
配置 GitLab LDAP
如果您使用 LDAP 管理使用者身份驗證,則可以將 GitLab 配置為也使用 LDAP 進行身份驗證。為此,請使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在檔案中找到以下行 -
# gitlab_rails['ldap_enabled'] = false # gitlab_rails['ldap_servers'] = YAML.load <<-'EOS' # main: # label: 'LDAP' # host: '_your_ldap_server' # port: 389 # uid: 'sAMAccountName' # bind_dn: '_the_full_dn_of_the_user_you_will_bind_with' # password: '_the_password_of_the_bind_user' # encryption: 'plain' # "start_tls" or "simple_tls" or "plain" # verify_certificates: true # smartcard_auth: false # active_directory: true # allow_username_or_email_login: false # lowercase_usernames: false # block_auto_created_users: false # base: '_the_full_dn_of_the_search_base' # user_filter: '' # EOS
取消註釋這些行並將 LDAP 設定替換為您自己的設定。儲存並關閉檔案。
接下來,執行以下命令使用新的 LDAP 設定配置 GitLab -
sudo gitlab-ctl reconfigure
安裝 GitLab 外掛
GitLab 允許您安裝外掛以擴充套件其功能。您可以從 GitLab 市場瀏覽和安裝 GitLab 外掛。要安裝外掛,請登入到您的 GitLab 例項並導航到“管理”區域。然後,單擊“外掛”,然後單擊“市場”。
您可以瀏覽可用的外掛,然後單擊“安裝”以安裝外掛。外掛安裝完成後,您可能需要透過單擊“設定”並按照外掛提供的說明進行配置。
自定義 GitLab 外觀
GitLab 允許您透過新增徽標和更改配色方案來自定義其外觀。要新增徽標,請登入到您的 GitLab 例項並導航到“管理”區域。然後,單擊“外觀”,然後單擊“自定義徽標”。
您可以上傳徽標並調整其大小和位置。要更改配色方案,請單擊“顏色”並選擇一個顏色主題。您還可以透過單擊“自定義 CSS”並新增您自己的 CSS 來自定義 CSS。
配置 GitLab Omnibus 設定
GitLab Omnibus 提供了一套豐富的配置選項,可用於自定義您的 GitLab 安裝。您可以配置與 GitLab、Nginx、PostgreSQL、Redis 等相關的各種設定。要檢視可用的配置選項列表,請執行以下命令 -
sudo gitlab-ctl show-config
這將顯示 GitLab 安裝的完整配置。
要自定義 GitLab Omnibus 設定,請使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在這裡,您可以取消註釋並修改任何可用的設定以自定義您的 GitLab 安裝。
配置 GitLab 容器登錄檔
GitLab 提供了一個內建的容器登錄檔,可用於儲存和管理 Docker 映象。要啟用 GitLab 容器登錄檔,請使用您喜歡的文字編輯器開啟 GitLab 配置檔案 -
sudo nano /etc/gitlab/gitlab.rb
在檔案中找到以下行 -
# gitlab_rails['registry_enabled'] = false
取消註釋該行以啟用 GitLab 容器登錄檔。儲存並關閉檔案。
接下來,執行以下命令重新配置 GitLab -
sudo gitlab-ctl reconfigure
啟用 GitLab 容器登錄檔後,您可以使用它來儲存和管理 Docker 映象。您可以參考官方文件,瞭解有關如何使用 GitLab 容器登錄檔的更多資訊。
結論
恭喜!您已成功在 CentOS 8/7 上安裝和配置了 GitLab。GitLab 是一款強大的工具,可以幫助您管理原始碼儲存庫並簡化您的開發流程。使用 GitLab,您可以與團隊成員協作、自動化您的 CI/CD 管道等等。
我們希望本文能幫助您完成安裝和配置過程。如果您遇到任何問題或有任何疑問,請隨時聯絡 GitLab 社群尋求支援。