GitLab – это программный инструмент, созданный с целью хранения и управления репозиториями Git. Он облегчает и ускоряет процесс совместного написания кода, его тестирования и развертывания.
Основной функционал GitLab:
На этом список функционала не заканчивается. Это лишь основная часть, необходимая для понимания важности использования этого ПО в проектной деятельности.
В статье будет подробно описана инструкция по самостоятельной установке GitLab на Ubuntu и последующей его настройке.
Ниже приведен список требований, достаточных для установки GitLab на сервер.
Во-первых, понадобится сервер, расположенный либо на личном компьютере, либо в облаке. Исходя из документационных требований к GitLab, сервер должен быть снабжен:
Во-вторых, понадобится доменное имя, которое будет указывать на соответствующий сервер. В данной инструкции в качестве примера будет использоваться бесплатный домен от Timeweb Cloud.
cloud
Первым этапом будет установка необходимого для GitLab ПО. Скачать его можно из репозиториев Ubuntu.
Выполняем базовое обновление пакетов:
sudo apt-get update
А после устанавливаем необходимые зависимости:
sudo apt-get install -y curl openssh-server ca-certificates tzdata perl
Есть вероятность, что часть ПО из списка уже была установлена на сервер ранее. Лучшим решением будет продублировать всю строку, указанную выше, и убедиться, что все успешно установлено.
Следующее, что нужно установить на сервер — это Postfix (или Sendmail), который служит механизмом отправки уведомлений на email:
sudo apt-get install -y postfix
Во время инсталляции программы в открывшемся окне необходимо выбрать «Интернет-сайт», как показано на рисунке ниже.
Далее указываем домен сервера — в нашем случае testgitlab.tw1.su
.
Теперь можно начинать устанавливать GitLab. Загрузим необходимый скрипт:
cd /tmp
curl -LO https://packages.gitlab.com/install/repositories/gitlab/gitlab-ce/script.deb.sh
Чтобы посмотреть и изучить работу данного скрипта, вводим команду:
sudo less /tmp/script.deb.sh
Если вас всё устраивает, можно переходить непосредственно к запуску скрипта:
sudo bash /tmp/script.deb.sh
Как только скрипт завершит работу можно начинать установку GitLab:
sudo apt install gitlab-ce
Для начала необходимо проверить по каким протоколам разрешен трафик. Чтобы посмотреть статут брандмауэра, вводим команду:
sudo ufw status
Как видно по рисунку, в данный момент разрешен трафик только по протоколу SSH. Вдобавок к SSH, нужно разрешить трафик по протоколам HTTP и HTTPS из-за того, что приложение GitLab взаимодействует с интернетом.
Разрешаем доступ HTTP:
sudo ufw allow http
А теперь HTTPS:
sudo ufw allow https
После внесенных изменений снова посмотрим статут брандмауэра. Как видно по рисунку ниже, все изменения вступили в силу.
Перед запуском GitLab важно отредактировать конфигурацию в файле gitlab.rb
с помощью редактора nano
:
sudo nano /etc/gitlab/gitlab.rb
В открывшемся файле находим строку продемонстрированную на картинке ниже и изменяем имя домена на testgitlab.tw1.su
. У вас будет другое имя. Также сразу перейдем на более безопасный протокол шифрования — HTTPS.
После этого найдем следующую строку, также продемонстрированную на картинке ниже, и вставим в пустые скобки после знака равенства актуальный email. Это необходимо для отправки сообщения в случае возникновения проблем с доменом. Также не забываем, что нужно убрать комментирование перед этой строкой, чтобы все заработало.
Выполняем сохранение (CTRL+O) и выходим из файла (CTRL+X). Чтобы система внесла все изменения, запускаем реконфигурацию:
sudo gitlab-ctl reconfigure
Запущенный процесс не только передаст всю необходимую информацию приложению о сервере, но и перенастроит Let’s Encrypt для указанного домена.
Вводим в строке браузера указанное ранее доменное имя. В нашем случае оно будет выглядеть так:
https://testgitlab.tw1.su
При первом входе открывается приветственная страница с возможностью указать пароль для учетной записи. После указания надежного пароля и его подтверждения произойдет перенаправление на окно аутентификации.
Чтобы войти в аккаунт администратора, необходимо заполнить:
root
;После входа в аккаунт откроется начальная страница, где пользователь может создать первый проект и приступить к работе.
У нового пользователя GitLab будут применены стандартные настройки пользователя. Чтобы их изменить, нужно перейти во вкладку «Settings», расположенном в правом верхнем углу окна в выпадающем меню.
В открывшимся разделе «Профиль» пользователь может изменить данные на актуальные.
Важными изменениями на этом этапе будут имя и адрес электронной почты. Первое будет отображаться для других участников проекта, а второе необходимо для получения уведомлений от сервиса. Чтобы новая почта привязалась, ее нужно подтвердить в полученном от сервиса письме.
Чтобы изменения вступили в силу, нужно нажать кнопку в самом низу экрана, как показано на картинке ниже.
Переходим в раздел в меню настроек слева «Account». Здесь нужно изменить автоматически присвоенное имя на более уникальное, как показано на рисунке ниже. Это даст дополнительную безопасность аккаунту в случае попыток его взлома.
Также в этом разделе пользователь может добавить двухфакторную аутентификацию.
Для взаимодействия Git с GitLab необходимо сгенерировать и привязать публичный ключ в настройках.
Запускаем генерацию ключей:
ssh-keygen
Во время генерации система предложить указать адрес хранения пары ключей и пароль, чтобы обеспечить дополнительную защиту. Чтобы пропустить данные этапы, нужно нажать Enter.
По завершении генерации ключей, нужно скопировать публичный ключ и вставить его в соответствующем разделе, добавив краткое описание, как показано на рисунке ниже.
Открываем публичный ключ:
cat ~/.ssh/id_rsa.pub
После копирования его в нужный раздел нажимаем кнопку «Add key».
Чтобы создать первый проект в GitLab, достаточно зайти на главную страницу и нажать на область, выделенную на картинке ниже.
Далее откроется форма создания проекта. Заполним такие данные, как название и тип репозитория. Репозиторий может быть публичным (Public), приватным (Private) или внутренним (Internal).
Если планируется добавлять файлы из уже существующего репозитория, то не нужно ставить галочку в поле «Initialize repository with a README». В ином случае сделать это нужно обязательно.
Далее нажимаем кнопку «Create repo» и создаем первый проект.
Теперь можно загрузить файлы проекта, добавить пользователей для совместной работы или удалить проект, если это необходимо.
Запустите GitLab на облачном сервере
В данной статье была продемонстрирована пошаговая инструкция по установке Gitlab на Ubuntu 22.04. После выполнения всех шагов, пользователь также сможет развернуть в системе первый проект и начать с ним работу.
вполне работает ;)
=) больше не работает
А что именно не работает? Прошли по всей статье целиком — всё запустилось.
в конфиге /etc/gitlab/gitlab.rb отсутствует упоминание letsencrypt, а без него и https не запускается