Install and config gitlab-ce
(2017-04-02 +0800)
- Host: ubuntu 16.04.2 or … LTS
- Gitlab: gitlab-ce
https://yuiwong.org/gitlab/server/serverbuilding/blob/master/gitlab/gitlab-ce.md
Steps
Requirements
Check whether your server meets the hardware requirements.
GitLab packages are built for 64bit systems.
For 32bit OS, consider alternative installation methods.
Install and configure the necessary dependencies
If you install postfix to send email please select ‘internet site’ during setup.
instead of using Postfix you can also use Sendmail
or configure a custom SMTP server
and configure it as an SMTP server.
Here use Postfix: config is DOMAIN of the administrator email!!
sudo apt-get install curl openssh-server ca-certificates postfix
# Simple reconfigure postfix by reinstall
sudo apt-get purge postfix
sudo apt-get install postfix
Add the gitlab package server and install the package
# NOT by this mirror
curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
# BUT
curl https://packages.gitlab.com/gpg.key 2> /dev/null | sudo apt-key add - &>/dev/null
add:
deb https://mirrors.tuna.tsinghua.edu.cn/gitlab-ce/ubuntu xenial main
to: /etc/apt/sources.list.d/gitlab-ce.list
# then
sudo apt-get update
sudo apt-get install gitlab-ce
CONFIGURE AND START GITLAB
Fixed !!
!!!!
sudo dpkg-divert --local --rename --add /sbin/initctl
sudo ln -s /bin/true /sbin/initctl
NO login git account!!
sudo useradd -r git -s /usr/sbin/nologin
Postgresql
sudo apt-get install -y postgresql postgresql-client libpq-dev postgresql-contrib
sudo -u postgres psql -d template1 -c "CREATE USER git CREATEDB;"
sudo -u postgres psql -d template1 -c "CREATE EXTENSION IF NOT EXISTS pg_trgm;"
sudo -u postgres psql -d template1 -c "CREATE DATABASE gitlabhq_production OWNER git;"
sudo -u git -H psql -d gitlabhq_production
sudo -u postgres psql -d template1 -c "ALTER ROLE git WITH PASSWORD 'YOUR_PASSWD';"
With external HTTP server
Apache or ngnix …: configure rewrite, redirect!
Apache2 and “redirect http requests to https”
and “Using a non-bundled web-server”…
https://docs.gitlab.com/omnibus/settings/nginx.html#using-a-non-bundled-web-server
https://gitlab.com/gitlab-org/gitlab-recipes/blob/master/web-server/apache/gitlab-omnibus-ssl-apache24.conf
TODO: ngnix
Examples
- NO SSL + with prefix apache configuration:
- Apache
rewrite
module required - Apache
proxy
module required - Config: apache/site-1.conf
- Apache
- SSL + with prefix apache configuration TODO
- SSL + NO prefix apache configuration TODO
Or without external HTTP server
Just use workhorse
, e.g. ...:8181
Reconfigure gitlab
Configuring the external URL for GitLab
Configuring a relative url for gitlab
# Set the external_url in /etc/gitlab/gitlab.rb:
external_url "https://example.com/gitlab"
# My
external_url "https://yuiwong.org/gitlab"
# Reconfigure GitLab for the changes to take effect:
sudo gitlab-ctl reconfigure
# Restart gitlab in case you shut down unicorn and sidekiq in the first step:
sudo gitlab-ctl restart
Example /etc/gitlab/gitlab.rb
– conf/gitlab.1.rb
– TODO more
Reconfigure
sudo gitlab-ctl reconfigure
Restart
sudo gitlab-ctl restart
Browse to the hostname and login
On your first visit,
you’ll be redirected to a password reset screen to provide the password
for the initial administrator account.
Enter your desired password and you’ll be redirected back to the login screen.
The default account’s username is root
.
Provide the password you created earlier and login.
After login you can change the username if you wish.
For configuration and troubleshooting options please see the
Omnibus GitLab documentation
If you are located in China, try using
https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/
References
- https://yuiwong.org/gitlab/server/serverbuilding
- https://about.gitlab.com/downloads/#ubuntu1604
- https://mirror.tuna.tsinghua.edu.cn/help/gitlab-ce/
- https://docs.gitlab.com/omnibus/common_installation_problems/README.html#reconfigure-freezes-at-ruby_block-supervise_redis_sleep-action-run
- https://gitlab.com/gitlab-org/gitlab-recipes/blob/master/web-server/apache/gitlab-omnibus-ssl-apache24.conf
- https://github.com/gitlabhq/gitlabhq/blob/master/doc/install/installation.md
- http://www.cnblogs.com/chinajava/p/5870683.html
- https://packages.gitlab.com/gitlab
- https://packages.gitlab.com/gitlab/nightly-builds