Общая информация о продукте Облачный сервер с GitLab
Для работы с GitLab CI/CD можно создать облачный сервер с GitLab — сервер с готовым образом операционной системы.
GitLab — платформа с открытым исходным кодом для хранения репозиториев проектов и автоматизации CI/CD с помощью встроенных пайплайнов и системы отслеживания ошибок. GitLab поддерживает полный цикл CI/CD — непрерывную интеграцию, сборку, тестирование и развертывание кода.
При создании облачного сервера с GitLab будет автоматически выпущен бесплатный TLS-сертификат от Let’s Encrypt® для домена, который вы укажете.
Для облачного сервера можно настроить автоматическое создание бэкапов по расписанию. Из бэкапа можно восстановить диск сервера.
Стоимость
При использовании облачного сервера с GitLab оплачиваются только вычислительные ресурсы облачного сервера. Ресурсы оплачиваются по модели оплаты облачной платформы.
Перед созданием сервера с GitLab пополните баланс.
Цены на вычислительные ресурсы можно посмотреть на selectel.ru.
Создать и настроить облачный сервер с GitLab
Для создания и настройки облачного сервера с GitLab нужен домен и публичный IP-адрес, чтобы облачный сервер был доступен из интернета. Домен можно добавить в DNS-хостинг Selectel.
Вы можете создать облачный сервер с GitLab стандартной конфигурации с автоматическим созданием базы данных PostgreSQL на сервере или подключить облачную базу данных PostgreSQL.
- Стандартная конфигурация
- Конфигурация с облачной базой данных PostgreSQL
Создайте публичный IP-адрес для облачного сервера.
Добавьте и делегируйте домен в DNS-хостинг Selectel.
Добавьте А-запись для домена и укажите в значении записи публичный IP-адрес, который вы создали на шаге 1.
В панели управления перейдите в раздел Облачная платформа → Серверы.
Нажмите Создать сервер.
Выберите готовый образ
cloud_gitlab_<gitlab_version>
.Если количество пользователей GitLab менее 500, выберите конфигурацию облачного сервера с vCPU от 4 ядер, RAM от 8 ГБ и объемом загрузочного диска (локальный или сетевой) от 20 ГБ.
Если количество пользователей больше 500, посмотрите системные требования в официальной документации GitLab.
Добавьте к серверу дополнительный диск объемом от 30 ГБ. Дополнительный диск необходим для запуска GitLab и используется для хранения основных данных, например, базы данных, репозиториев.
Выберите приватную подсеть, которая подключена к облачному роутеру с доступом к внешней сети, и подключите публичный IP-адрес, который вы создали на шаге 1.
Разместите SSH-ключ на сервере — доступ к серверу по паролю отключен в образе. Выберите существующий ключ или нажмите Добавить SSH-ключ. Введите имя ключа и вставьте публичный SSH-ключ в формате OpenSSH. Нажмите Добавить.
В образе SSH-порт изменен на 22022.
В поле User data вставьте скрипт, который выполнится при загрузке системы:
#cloud-config
write_files:
- path: "/opt/gomplate/values/user-values.yaml"
permissions: "0644"
content: |
gitlabDomain: "<example.com>"
gitlabRootEmail: "<root@example.com>"
gitlabRootPassword: "<administrator_password>"
gitlabPostgresDB: "<database_name>"
gitlabPostgresUser: "<database_user_name>"
gitlabPostgresPassword: "<database_user_password>"
useExternalDB: falseУкажите:
<example.com>
— домен, для которого автоматически выпустится TLS-сертификат от Let’s Encrypt®;<root@example.com>
— электронная почта администратора GitLab;<administrator_password>
— пароль администратора GitLab. Должен быть более восьми символов;<database_name>
— имя базы данных PostgreSQL;<database_user_name>
— имя пользователя базы данных PostgreSQL;<database_user_password>
— пароль пользователя базы данных PostgreSQL.
Нажмите Создать. Настройка образа займет несколько минут.
Создайте публичный IP-адрес для облачного сервера.
Добавьте и делегируйте домен в DNS-хостинг Selectel.
Добавьте А-запись для домена и укажите в значении записи публичный IP-адрес, который вы создали на шаге 1.
Создайте кластер и облачную базу данных PostgreSQL, которую вы подключите к облачному серверу. Выберите версию PostgreSQL от 13 и выше.
В панели управления перейдите в раздел Облачная платформа → Серверы.
Нажмите Создать сервер.
Выберите готовый образ
cloud_gitlab_<gitlab_version>
.Если количество пользователей GitLab менее 500, выберите конфигурацию облачного сервера с vCPU от 4 ядер, RAM от 8 ГБ и объемом загрузочного диска (локальный или сетевой) от 20 ГБ.
Если количество пользователей больше 500, посмотрите системные требования в официальной документации GitLab.
Добавьте к серверу дополнительный диск объемом от 30 ГБ. Дополнительный диск необходим для запуска GitLab и используется для хранения основных данных, например, репозиториев.
Выберите приватную подсеть, которая подключена к облачному роутеру с доступом к внешней сети, и подключите публичный IP-адрес, который вы создали на шаге 1.
Разместите SSH-ключ на сервере — доступ к серверу по паролю отключен в образе. Выберите существующий ключ или нажмите Добавить SSH-ключ. Введите имя ключа и вставьте публичный SSH-ключ в формате OpenSSH. Нажмите Добавить.
В образе SSH-порт изменен на 22022.
В поле User data вставьте скрипт, который выполнится при загрузке системы:
#cloud-config
write_files:
- path: "/opt/gomplate/values/user-values.yaml"
permissions: "0644"
content: |
gitlabDomain: "<example.com>"
gitlabRootEmail: "<root@example.com>"
gitlabRootPassword: "<administrator_password>"
gitlabPostgresDB: "<database_name>"
gitlabPostgresUser: "<database_user_name>"
gitlabPostgresPassword: "<database_user_password>"
useExternalDB: true
externalDBHost: "<host>"
externalDBSSLMode: verify-ca
externalDBPort: "5432"Укажите:
<example.com>
— домен, для которого автоматически выпустится TLS-сертификат от Let’s Encrypt®;<root@example.com>
— электронная почта администратора GitLab;<administrator_password>
— пароль администратора GitLab. Должен быть более восьми символов;<database_name>
— имя облачной базы данных PostgreSQL. Можно посмотреть в панели управления в разделе Облачная платформа → Базы данных → страница кластера → вкладка Базы данных;<database_user_name>
— имя пользователя облачной базы данных PostgreSQL. Можно посмотреть в панели управления в разделе Облачная платформа → Базы данных → страница кластера → вкладка Базы данных → карточка базы данных → поле Владелец базы;<database_user_password>
— пароль пользователя облачной базы данных PostgreSQL. Пароль не хранится в панели управления — если вы его потеряли, измените пароль;<host>
— DNS-адрес облачной базы данных PostgreSQL. Можно посмотреть в панели управления в разделе Облачная платформа → Базы данных → страница кластера → вкладка Настройки → блок Адреса и статусы нод → вкладка DNS-адреса.
Нажмите Создать. Настройка образа займет несколько минут.