Как установить Gitlab на Ubuntu 22.04

GitLab — это мощное решение для хранения и управления Git-репозиториями. Платформа позволяет командам эффективно работать с кодом, синхронизировать процессы разработки, вносить изменения и при необходимости быстро откатываться к предыдущим версиям проектов.

В качестве серверной среды будем использовать виртуальный сервер VPS/VDS с предустановленной операционной системой Ubuntu 24.04.

Как подготовить VPS к установке GitLab

Желательно, но не обязательно предварительно настроить A-запись домена, указав её на IP-адрес вашего виртуального сервера. Это позволит обращаться к GitLab через понятный домен.

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Обновление системы

Выполните обновление списка пакетов:

apt update

Проверка и настройка часового пояса

Проверьте текущие настройки времени:

timedatectl

Если часовой пояс отличается от вашего, измените его с помощью команды:

timedatectl set-timezone НАЗВАНИЕ_ВАШЕГО_ЧАСОВОГО_ПОЯСА

Синхронизация времени (Chrony)

Для корректной работы сетевых служб, безопасности и распределённых приложений важно точное время. Установите и активируйте chrony:

apt install chrony
systemctl enable chrony

Установка дополнительных пакетов

Установите базовый набор необходимых утилит:

apt install curl openssh-server ca-certificates

Примечание: будет установлена бесплатная версия GitLab (Community Edition).

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти

Как загрузить и установить GitLab на VPS

Загрузка и установка

Выполните следующие команды для добавления официального репозитория и установки GitLab CE:

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

После успешной установки вы увидите соответствующее сообщение. Однако на этом этапе виртуальный сервер ещё не сконфигурирован.

Как настроить GitLab на виртуальном сервере

Задание URL панели управления

Откройте конфигурационный файл:

nano /etc/gitlab/gitlab.rb

Найдите строку:

external_url 'http://gitlab.example.com'

Замените её на ваш домен, используя HTTPS:

external_url 'https://ваш_домен.ru'

Включение SSL через Let’s Encrypt

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

letsencrypt['enable'] = true
nginx['redirect_http_to_https'] = true

Настройка автоматического продления сертификата

Укажите параметры автообновления (например, каждые 3 дня в 23:33):

letsencrypt['auto_renew'] = true
letsencrypt['auto_renew_hour'] = "23"
letsencrypt['auto_renew_minute'] = "33"
letsencrypt['auto_renew_day_of_month'] = "*/3"

Где:

  • auto_renew — включение автоматического обновления.
  • auto_renew_hour / auto_renew_minute — время запуска задачи.
  • auto_renew_day_of_month — периодичность (дни месяца).

Применение изменений

После сохранения файла выполните:

gitlab-ctl reconfigure
gitlab-ctl restart nginx

Возможные ошибки и их решение

Ошибка 502

При первом обращении к сервису вы можете временно видеть ошибку 502 Bad Gateway. Это нормально — GitLab требуется несколько минут для запуска всех компонентов.

Проблема с сокетом GitLab Workhorse

В логах может появиться сообщение о том, что сокет не найден:

connect() to unix:/var/opt/gitlab/gitlab-workhorse/sockets/socket failed (2: No such file or directory)

Решение:

Откройте файл конфигурации:

nano /etc/gitlab/gitlab.rb

Найдите и раскомментируйте следующие строки:

gitlab_workhorse['enable'] = true
gitlab_workhorse['listen_network'] = "unix"
gitlab_workhorse['listen_addr'] = "/var/opt/gitlab/gitlab-workhorse/sockets/socket"
gitlab_workhorse['auth_backend'] = "http://localhost:8080"

Примените настройки и перезапустите компоненты:

sudo gitlab-ctl reconfigure
sudo gitlab-ctl restart
sudo gitlab-ctl status

После устранения ошибки ваш экземпляр GitLab станет доступен по настроенному домену.

Как войти в GitLab в первый раз

  • Логин по умолчанию: root
  • Пароль можно узнать, выполнив команду:
cat /etc/gitlab/initial_root_password | grep Password:

В ответе будет показан автоматически сгенерированный пароль.

Установка почтового агента (MTA)

Для отправки почтовых уведомлений установите Postfix:

apt install postfix

При запросе типа конфигурации выберите пункт 2 (Internet Site).

Завершение первичной настройки Gitlab

Первичная настройка GitLab успешно завершена. Теперь вы можете использовать его для управления репозиториями и совместной разработки.

Если у вас еще нет виртуального сервера, его можно арендовать у проверенных провайдеров из нашей подборки надежных VPS серверов. Перейти