# Установка и настройка Gitlab CE на Ubuntu 20.04

Система управления репозиториями кода Gitlab широко используется в веб-разработке и является основным инструментом работы для многих компаний. Gitlab удобен, функционален и позволяет отслеживать весь жизненный цикл разрабатываемого приложения.

В этой инструкции мы расскажем о двух способах установки Gitlab CE и о его первичной настройке — установке паролей, ограничении доступа, настройке аутентификации при подключении.

Нам понадобится готовый к работе сервер под управлением Ubuntu 20.04.

Для работы Gitlab CE сервер должен удовлетворять минимальным системным требованиям (opens new window), заявленным разработчиками:

  • 4 ядра CPU для поддержки работы до 500 пользователей;
  • 4 Гб RAM.

# Установка Gitlab

# Официальный репозиторий Git

Перед началом работы обновим список доступных для установки пакетов apt:

sudo apt update
sudo apt upgrade

Установим несколько пакетов, которые понадобятся Gitlab для установки и во время работы:

sudo apt install ca-certificates curl openssh-server postfix

Во время установки postfix появится вопрос, в котором нужно выбрать вариант Internet site и указать имя домена, привязанного к серверу, чтобы настроить отправку почты.

После установки всех необходимых сервисов можно переходить к установке Gitlab. Перейдём в директорию /tmp/ и загрузим установочный скрипт:

cd /tmp
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh

Перед запуском скрипта проверим его содержимое. Вводим команду:

less /tmp/script.deb.sh

Она откроет скрипт в текстовом редакторе. Если его содержимое не вызывает подозрений, то запустим его:

sudo bash script.deb.sh

Скрипт обновит список репозиториев apt и список доступных для установки пакетов. После окончания работы скрипта переходим к установке Gitlab:

sudo apt install gitlab-ce

Установщик Gitlab не только установит программу на сервер, но и добавит нужные правила для ufw.

# Пакеты приложений Джино

В качестве альтернативного варианта установки, если ваш VPS расположен на Джино, вы можете воспользоваться установкой из «Пакетов приложений». Для этого в разделе УправлениеПакеты приложений выберите Gitlab CE. Программа-установщик установит Gitlab CE и все необходимые для него компоненты.

# Настройка Gitlab CE и первый запуск

Вне зависимости от метода, который вы использовали для установки Gitlab, дальнейшая настройка и работа с ним осуществляется одинаково.

Сначала нужно настроить доступ к Gitlab. Для этого откроем конфигурационный файл:

sudo vim /etc/gitlab/gitlab.rb

Переходим к строке:

external_url 'http://example.com'

В ней указываем доменное имя, привязанное к нашему серверу. Для VPS, расположенных на Джино, можно указать технический адрес сервера. Это единственное изменение, которое нужно сделать в конфигурационном файле. Закрываем его и запускаем обновление конфигурации Gitlab:

sudo gitlab-ctl reconfigure

Когда конфигурация обновится, можно проверить работу Gitlab. Для этого откроем браузер и зайдём на указанный в конфигурационном файле URL. Если всё работает правильно, мы увидим стартовую страницу Gitlab CE.

# Вход в Gitlab CE

Первый вход в Gitlab нужно осуществить от имени администратора (root-пользователя). Если в ходе установки программа-установщик не попросила задать пароль для него, сделаем это вручную:

sudo gitlab-rake "gitlab:password:reset"

Эта команда запустит gitlab-rake — инструмент для выполнения заданий в Gitlab. Указанное здесь задание позволяет задать пароль пользователя. В качестве имени пользователя укажем root и зададим новый пароль для него.

Теперь можно возвращаться к стартовой странице Gitlab CE и заходить, используя логин root и только что созданный для него пароль.

# Базовая настройка Gitlab

Начинать работу с Gitlab лучше всего с нескольких базовых операций настройки, которые позволят сделать использование Gitlab максимально комфортным и безопасным.

Сначала обновим информацию о нашей учётной записи. Для этого перейдём в раздел настроек профиля «Edit Profile»:

«Edit Profile».

Здесь можно указать актуальное имя администратора и адрес электронной почты для обратной связи:

2nd screenshot

После этого сменим имя root-пользователя: имя root используется по умолчанию и поэтому часто становится объектом хакерских атак. Перейдите в раздел «Account» и измените имя пользователя, при этом root-права у него остаются:

«Account»

# Настройки доступа

Gitlab предоставляет широкие возможности по настройке доступа к репозиторию. Они представлены в области администратора:

область администратора

Здесь можно настроить пользовательский доступ как к отдельным проектам, так и к репозиторию в целом, установить ограничения или полностью запретить регистрацию новых пользователей, настроить ограничения доступа к репозиторию для определённого IP или домена:

настройка доступа

Теперь Gitlab CE готов к началу нового проекта.