Gitlab install on Ubuntu 18.04

Інструкція по встановленню Gitlab на Ubuntu 18.04
Обновляємо систему:

sudo apt-get update -y
sudo apt-get upgrade -y

Нам потрібно буде встановити SSL, тому зразу встановлюємо всі необхідні залежності:

sudo apt-get install ca-certificates postfix curl openssh-server wget

Тепер завантажуємо скріпт встановлення з офіційного репозиторія Gitlab:

curl -sS https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh | sudo bash

Ця команда скачає Gitlab, після чого нам потрібно буде його налаштувати. Нам потрібно поміняти наш URL в файлі:

sudo vim /etc/gitlab/gitlab.rb

Прописуємо наш домен в рядок:

external_url 'http://git.example.site'

Тепер приступимо до налаштування SSL. Взагалі візьміть за правило встановлювати SSL на всі сервіси, які у вас є. Тим більше, що зробити це можна безкоштовно.

Нам потрібно просто встановити LetsEnctypt

sudo apt-get install letsencrypt -y

Після установки нам потрібно вказати EMail і URL

sudo letsencrypt certonly --standalone --agree-tos --no-eff-email --agree-tos --email [email protected] -d git.example.site

Далі нам потрібно створити ключ

sudo mkdir -p /etc/gitlab/ssl/
sudo openssl dhparam -out /etc/gitlab/ssl/dhparams.pem 2048

Міняємо права доступу на цю директорію

chmod 600 /etc/gitlab/ssl/*

Готово.

Тепер, щоб активувати HTTPS, потрібно відредагувати файл

sudo vim /etc/gitlab/gitlab.rb

Міняємо рядок “external_url”

external_url 'https://git.example.site'

Далі в цьому ж файлі шукаємо блок, в якому конфігуруєтся NGINX. В кінці цього блоку вставляємо код:

nginx['redirect_http_to_https'] = true
nginx['ssl_certificate'] = "/etc/letsencrypt/live/git.example.site/fullchain.pem"
nginx['ssl_certificate_key'] = "/etc/letsencrypt/live/git.example.site/privkey.pem"
nginx['ssl_dhparam'] = "/etc/gitlab/ssl/dhparams.pem"

Не забудьте поміняти домен git.example.site на ваш.

Тепер нам потрібно знову сконфігурувати Gitlab

sudo gitlab-ctl reconfigure

Готово.

Тепер нам потрібно включити вбудований в Ubuntu фаєрвол і дозволити підключення до сервера по протоколах ssh, http, https

sudo ufw allow ssh
sudo ufw allow http
sudo ufw allow https

Тепер запустимо сервіс

sudo ufw enable

і перевіримо що він працює

sudo ufw status

У нас повинен успішно запуститися наш GitLab. Перевіряємо його за адресою https://git.example.site

Нас відразу ж попросять придумати пароль. Задаємо пароль, а потім заходимо в GitLab з користувачем root і паролем, який ми тільки що вказали.