本文目標是在一臺安裝了gitlab
系統上的服務器上,開啓Gitlab Pages
服務。nginx
Gitlab CE
系統版本:11.8.1
git
開放服務器
端口ruby
Gitlab Pages 服務默認:8090
服務器
準備域名gitlab
*.xx.com
,最好是一個獨立的域名,不要使用Gitlab
系統的域名。網站
可選,若是Gitlab Pages
服務想要開啓https
,請準備通配域名證書。url
DNS指向code
設置 IPv4 A
類型,記錄爲*
,IP指向GitLab
服務器ssl
服務器上安裝gitlab-runner
文檔
Gitlab 配置文件地址
/var/opt/gitlab/gitlab.rb
gitlab_pages['enable'] = true
https
模式:https
模式設置:
pages_external_url "https://xxx.com/"
http/2
模式只有在https
模式下激活:
gitlab_pages['use_http2'] = true
關聯域名證書:
pages_nginx['redirect_http_to_https'] = true pages_nginx['ssl_certificate'] = "/opt/gitlab/ssl/crt.pem" pages_nginx['ssl_certificate_key'] = "/opt/gitlab/ssl/key.pem"
http
模式:pages_external_url "http://xxx.com/"
不啓用的話,全部gitlab page
靜態站點都是公開的。
gitlab_pages['access_control'] = true
啓用後,會根據倉庫的權限進行控制訪問。
同時也會自動在gitlab
系統的應用中,建立一個用於認證回調的應用,該應用會在第一次訪問靜態站點的時候,須要登陸,受權贊成一次。
若是系統應用中沒有自動建立,手動建立一個便可。
鍵名 | 鍵值 | 說明 |
---|---|---|
名稱 | GitLab Pages | 應用名稱 |
Redirect URI | https://projects.xx.com/auth or http://projects.xx.com/auth |
對應pages 服務域名 |
gitlab_pages['redirect_http'] = true
靜態網站模版,請查閱官方文檔,注意環境的搭建。Gitlab Pages 服務文檔
paths
路徑不能自定義指定,只能讀取public
文件夾路徑