Как установить GitLab на Debian 11

GitLab – это самодостаточная система управления репозиториями git Этот менеджер Git-репозиториев предоставляет такие возможности, как вики, отслеживание проблем, непрерывная интеграция и развертывание. Благодаря этим преимуществам, объединяющим команды разработчиков, операторов и безопасников в единое приложение, GitLab широко используется по всему миру. Сегодня мы покажем вам, как установить GitLab на ваш VPS Debian 11.

Установка GitLab на Debian 11 – довольно простая задача, и установка займёт около 15 минут.

Кроме того, рекомендуется иметь не менее 2 ГБ SWAP памяти, даже если у вас достаточно доступной оперативной памяти.

Шаг 1. Обновление системы

Сначала нам нужно войти на наш VPS Debian 11 через SSH:

ssh master@IP_Address -p Port_Number

Замените «master» на пользователя с привилегиями sudo или root, если необходимо. Кроме того, замените «IP_Address» и «Port_Number» на соответствующие IP-адрес и номер порта SSH вашего сервера.

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

sudo apt update && apt upgrade

Шаг 2. Добавляем репозиторий GitLab

Существует два способа установки GitLab на Debian 11: мы можем установить его с помощью репозитория или с помощью пакета .deb. В этом руководстве мы будем использовать репозиторий для установки GitLab на Debian 11.

Давайте загрузим репозиторий:

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

Команда выше загрузит репозиторий GitLab в файл списка источников APT по адресу /etc/apt/sources.list.d/gitlab_gitlab-ce.list Поскольку исходный файл пакета GitLab предназначен для Debian 10, нам нужно изменить эти строки.

deb https://packages.gitlab.com/gitlab/gitlab-ce/debian/ bullseye main
deb-src https://packages.gitlab.com/gitlab/gitlab-ce/debian/ bullseye main

Замените „bullseye“ на „buster“, выполнив эту команду.

sudo sed -i 's/bullseye/buster/g' /etc/apt/sources.list.d/gitlab_gitlab-ce.list

Теперь нам нужно обновить репозиторий.

sudo apt update -y

Шаг 3. Установка GitLab

После добавления репозитория мы можем установить GitLab Community Edition, выполнив эту команду:

sudo apt install gitlab-ce -y

После завершения установки мы можем выполнить эту команду для перенастройки и запуска GitLab:

sudo gitlab-ctl reconfigure

На данный момент вы должны иметь возможность получить доступ к GitLab по адресу http://YOUR_SERVER_IP_ADDRESS/ и войти в систему как root, используя пароль, найденный в /etc/gitlab/initial_root_password

Обратите внимание, что пароль в /etc/gitlab/initial_root_password действителен только в течение 24 часов . Вы можете войти в систему и изменить пароль немедленно или сбросить его с помощью следующей команды:

sudo gitlab-rake "gitlab:password:reset[root]"

Шаг 4. Настройка GitLab

Теперь, когда GitLab успешно установлен, пришло время его настроить.

Защитите сервер GitLab с помощью SSL-сертификата Let’s Encrypt

По умолчанию при установке GitLab без указания окружения для значения EXTERNAL_URL. Установка установит http://gitlab.example.com в качестве внешнего URL. Если мы хотим получить доступ к нашей установке GitLab через домен или субдомен и установить для него SSL-сертификат, мы можем отредактировать конфигурационный файл /etc/gitlab/gitlab.rb

Откройте /etc/gitlab/gitlab.rb и найдите external_url строку

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

Замените ее на

external_url 'https://gitlab.yourdomain.com'

Убедитесь, что DNS-запись вашего домена или субдомена указывает на ваш сервер GitLab.

Затем, все в том же файле, убедитесь, что они не закомментированы и изменены следующим образом.

letsencrypt['enable'] = true
letsencrypt['contact_emails'] = ['you@yourdomain.com'] 
letsencrypt['auto_renew'] = true

Сохраните файл и выйдите.

Необходимо заново настроить Omnibus GitLab, и это нужно делать каждый раз, когда мы редактируем файл /etc/gitlab/gitlab.rb.

sudo gitlab-ctl reconfigure

Запустите вышеуказанную команду и подождите – после ее выполнения SSL-сертификат от Let’s Encrypt должен быть установлен, и вы сможете получить доступ к GitLab по адресу https://YOUR_DOMAIN_NAME.COM

Конфигурация электронной почты

По умолчанию GitLab может отправлять электронную почту с помощью sendmail . Однако для лучшей доставки почты вам следует рассмотреть возможность использования SMTP-сервера для этой цели. Пожалуйста, загляните в наш блог на
https://rosehosting.com/blog и следуйте руководству по установке почтового сервера на Debian 11. Получив учетные данные SMTP, мы можем настроить GitLab на использование SMTP для отправки электронной почты.

Open /etc/gitlab/gitlab.rb

sudo nano /etc/gitlab/gitlab.rb

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

# gitlab_rails['smtp_enable'] = true
# gitlab_rails['smtp_address'] = "smtp.server"
# gitlab_rails['smtp_port'] = 465
# gitlab_rails['smtp_user_name'] = "smtp user"
# gitlab_rails['smtp_password'] = "smtp password"
# gitlab_rails['smtp_domain'] = "example.com"
# gitlab_rails['smtp_authentication'] = "login"
# gitlab_rails['smtp_enable_starttls_auto'] = true
# gitlab_rails['smtp_tls'] = true
# gitlab_rails['smtp_pool'] = false
# gitlab_rails['smtp_openssl_verify_mode'] = 'none'
# gitlab_rails['smtp_ca_path'] = "/etc/ssl/certs"
# gitlab_rails['smtp_ca_file'] = "/etc/ssl/certs/ca-certificates.crt"

Для того, чтобы все заработало, вам нужно откомментировать эти строки и использовать свои учетные данные SMTP. Также убедитесь, что ваш SMTP-пароль не содержит никаких разделителей строк, используемых в YAML-файле, иначе он не будет работать. Сохраните изменения и выйдите из файла.

Как упоминалось ранее, после редактирования файла gitlab.rb нам необходимо заново настроить Omnibus GitLab.

sudo gitlab-ctl reconfigure

Вот и все. С этого момента GitLab будет отправлять электронные письма через SMTP, что приведет к лучшей доставляемости писем по сравнению с использованием sendmail . Вы можете войти на свой сайт GitLab по адресу https://yourdomain.com и начать пользоваться им.

Поздравляем! Вы успешно установили GitLab на Debian 11.

Зарубин Иван Эксперт по Linux и Windows

Парашютист со стажем. Много читаю и слушаю подкасты. Люблю посиделки у костра, песни под гитару и приближающиеся дедлайны. Люблю путешествовать.

Вдохновлен www.rosehosting.com

Похожие статьи

Комментарии (0)