在Ubuntu上為GitLab部署HTTPS,您需要獲取SSL證書并配置GitLab以使用該證書。以下是詳細步驟:
您可以使用Let’s Encrypt免費獲取SSL證書。首先,確保已安裝Certbot。如果尚未安裝,請運行以下命令:
sudo apt-get update
sudo apt-get install certbot
運行以下命令以獲取SSL證書。請確保將yourdomain.com替換為您的實際域名。
sudo certbot certonly --standalone --http-01-port=80 -d yourdomain.com -d www.yourdomain.com
成功后,您將在/etc/letsencrypt/live/yourdomain.com/目錄下找到證書文件(fullchain.pem)和私鑰文件(privkey.pem)。
首先,備份原始的GitLab配置文件:
sudo cp /etc/gitlab/gitlab.rb /etc/gitlab/gitlab.rb.bak
使用文本編輯器打開/etc/gitlab/gitlab.rb文件:
sudo nano /etc/gitlab/gitlab.rb
找到以下行并進行修改:
external_url 'http://yourdomain.com'
將其更改為:
external_url 'https://yourdomain.com'
然后,在文件末尾添加以下內容,以指定SSL證書和私鑰文件的路徑:
nginx['ssl_certificate'] = "/etc/letsencrypt/live/yourdomain.com/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/yourdomain.com/privkey.pem"
保存并關閉文件。
運行以下命令以應用更改:
sudo gitlab-ctl reconfigure
最后,重啟GitLab服務:
sudo gitlab-ctl restart
現在,您的GitLab實例應該已經通過HTTPS提供服務。請確保將yourdomain.com替換為您的實際域名,并根據需要調整防火墻規則以允許HTTPS流量。