本文目标是在一台安装了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
文件夹路径