Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
G
gitlab-ce
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
1
Merge Requests
1
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
nexedi
gitlab-ce
Commits
acf7ae5e
Commit
acf7ae5e
authored
Feb 21, 2016
by
Achilleas Pipinellis
Committed by
James Edwards-Jones
Jan 31, 2017
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
Add info about the pages daemon
parent
f8927dad
Changes
1
Hide whitespace changes
Inline
Side-by-side
Showing
1 changed file
with
45 additions
and
4 deletions
+45
-4
doc/pages/administration.md
doc/pages/administration.md
+45
-4
No files found.
doc/pages/administration.md
View file @
acf7ae5e
...
...
@@ -37,11 +37,52 @@ probably want to read the [user documentation](README.md).
<!-- END doctoc generated TOC please keep comment here to allow auto update -->
##
Architecture
##
The GitLab Pages daemon
GitLab uses a separate tool ([gitlab-pages]), a simple HTTP server written in
Go that serves GitLab Pages with CNAMEs and SNI using HTTP/HTTP2. You are
encouraged to read its
[
README
][
pages-readme
]
to fully understand how it works.
Starting from GitLab EE 8.5, Pages make use of a separate tool ([gitlab-pages]),
a simple HTTP server written in Go that serves GitLab Pages with CNAMEs and SNI
using HTTP/HTTP2. You are encouraged to read its
[
README
][
pages-readme
]
to fully
understand how it works.
What is supported when using the pages daemon:
-
Multiple domains per-project
-
One TLS certificate per-domain
-
Validation of certificate
-
Validation of certificate chain
-
Validation of private key against certificate
---
In the case of custom domains, the Pages daemon needs to listen on ports
`80`
and/or
`443`
. For that reason, there is some flexibility in the way which you
can set it up, so you basically have three choices:
1.
Run the pages daemon in the same server as GitLab, listening on a secondary IP
1.
Run the pages daemon in the same server as GitLab, listening on the same IP
but on different ports. In that case, you will have to proxy the traffic with
a loadbalancer.
1.
Run the pages daemon in a separate server. In that case, the Pages [
`path`
]
must also be present in the server that the pages daemon is installed, so
you will have to share it via network.
[
`path`
]:
https://gitlab.com/gitlab-org/gitlab-ee/blob/8-5-stable-ee/config/gitlab.yml.example#L155
### Install the Pages daemon
**Install the Pages daemon on a source installation**
```
cd /home/git
sudo -u git -H git clone https://gitlab.com/gitlab-org/gitlab-pages.git
cd gitlab-pages
sudo -u git -H git checkout 0.2.0
sudo -u git -H make
```
**Install the Pages daemon on Omnibus**
The
`gitlab-pages`
daemon is included in the Omnibus package.
[
pages-readme
]:
https://gitlab.com/gitlab-org/gitlab-pages/blob/master/README.md
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment