GitLab is a web-based Git repository manager with some useful tools like board, wiki, issue tracking,… The community edition comes with an open source license and this platform is developed by GitLab Inc.
It’s possible to create a free account in their website and use their platform completely free. But you can also have the necessity to install it in a private machine for example because you have confidential projects where you must keep all data in a local machine.
In this guide, I’ll show you how you can install it in a own machine running Ubuntu Server 16.04 LTS…
Install dependencies
First of all, you need to install some dependencies for gitlab.
# sudo apt-get install curl openssh-server ca-certificates postfix nodejs
Install and configure GitLab
Add the GitLab package server and install the package
# curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash
# sudo apt-get install gitlab-ce
Now you can configure and restart GitLab with:
# sudo gitlab-ctl reconfigure
At this point, you can open your gitlab in a browser and create an admin account. Example: mygitlab.crypted2.com
Useful configs
If you have a custom ssh port, you can correct the configuration of GitLab editing the file: /etc/gitlab/gitlab.rb
gitlab_rails[‘gitlab_shell_ssh_port’] = 22
gitlab-ctl reconfigure
If you forget the administrator password, you can reset it following the official guide: https://docs.gitlab.com/ee/security/reset_root_password.html
Nginx: Use your previous installation
GitLab uses the webserver nginx as default. If you have already an installation of nginx in your machine, you can keep using and you need just to edit some configs in GitLab.
Edit the file: # sudo nano /etc/gitlab/gitlab.rb
Search these lines and edit like this example:
external_url ‘https://git.crypted2.com’
nginx[‘enable’] = false
nginx[‘listen_port’] = 80
nginx[‘listen_https’] = false
nginx[‘proxy_set_headers’] = {
“X-Forwarded-Proto” => “https”,
“X-Forwarded-Ssl” => “on”
}
web_server[‘external_users’] = [‘www-data’]
Now you can clear the cache and reload GitLab, so it will load the new configs:
# sudo gitlab-rake cache:clear
# sudo gitlab-ctl stop
# sudo gitlab-ctl reconfigure
# sudo gitlab-ctl start
Nginx: Enable SSL for gitlab
Reference Link: https://www.phusionpassenger.com/library/install/nginx/install/oss/xenial/
Install our PGP key and add HTTPS support for APT:
# sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv-keys 561F9B9CAC40B2F7
# sudo apt-get install -y apt-transport-https ca-certificates
Add our APT repository:
# sudo sh -c 'echo deb https://oss-binaries.phusionpassenger.com/apt/passenger xenial main > /etc/apt/sources.list.d/passenger.list'
sudo apt-get update
Install Passenger + Nginx:
# sudo apt-get install -y nginx-extras passenger
Edit /etc/nginx/nginx.conf
and uncomment include /etc/nginx/passenger.conf;
Some steps are missing, for example the configurations of nginx for the activation of the subdomain for GitLab. But this guide is focused to have the main steps to install the platform GitLab.
Leave us your feedback and help us to improve our posts.
Thank you !
Recent Comments
No comments