Перейти к основному содержимому
Общая информация о продукте Облачный сервер с GitLab
Последнее изменение:

Общая информация о продукте Облачный сервер с GitLab

GitLab — платформа с открытым исходным кодом для хранения репозиториев проектов и автоматизации CI/CD с помощью встроенных пайплайнов и системы отслеживания ошибок. GitLab поддерживает полный цикл CI/CD — непрерывную интеграцию, сборку, тестирование и развертывание кода.

Для работы с GitLab CI/CD можно создать облачный сервер с GitLab с готовым образом операционной системы.

Дополнительно можно создать облачный сервер с GitLab Runner. GitLab Runner — открытое программное обеспечение, используется для автоматизации и выполнения задач (пайплайнов) в GitLab CI/CD. Работает как агент, который последовательно выполняет шаги, определенные в задачах пайплайна. Позволяет запускать сборку, тестирование и развертывание приложений в автоматическом режиме, управляя всем процессом выполнения задач CI/CD в GitLab.

При создании облачного сервера с GitLab будет автоматически выпущен бесплатный TLS-сертификат от Let’s Encrypt® для домена, который вы укажете. Для облачных серверов с GitLab и GitLab Runner можно настроить автоматическое создание бэкапов по расписанию. Из бэкапа можно восстановить диск сервера.

Стоимость

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

Перед созданием сервера пополните баланс.

Цены на вычислительные ресурсы можно посмотреть на selectel.ru.

Создать и настроить облачный сервер с GitLab

Для создания и настройки облачного сервера с GitLab нужен домен и публичный IP-адрес, чтобы облачный сервер был доступен из интернета. Домен можно добавить в DNS-хостинг Selectel.

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

  1. Создайте публичный IP-адрес для облачного сервера.

  2. В панели управления добавьте домен в DNS-хостинг (legacy).

  3. Делегируйте домен, для этого у своего доменного регистратора в NS-записях домена укажите NS-серверы Selectel: ns1.selectel.ru, ns2.selectel.ru, ns3.selectel.ru, ns4.selectel.ru.

  4. Добавьте А-запись для домена по инструкции Добавить ресурсную запись (вкладка DNS-хостинг (legacy)). В значении записи укажите публичный IP-адрес, который вы создали на шаге 1.

  5. В панели управления перейдите в раздел Облачная платформаСерверы.

  6. Нажмите Создать сервер.

  7. Выберите готовый образ Cloud GitLab <version>.

  8. Если количество пользователей GitLab менее 500, выберите конфигурацию облачного сервера с vCPU от 4 ядер, RAM от 8 ГБ и объемом загрузочного диска (локальный или сетевой) от 20 ГБ.

    Если количество пользователей больше 500, посмотрите системные требования в официальной документации GitLab.

  9. Добавьте к серверу дополнительный диск объемом от 30 ГБ. Дополнительный диск необходим для запуска GitLab и используется для хранения основных данных, например, базы данных, репозиториев.

  10. Выберите приватную подсеть, которая подключена к облачному роутеру с доступом к внешней сети, и подключите публичный IP-адрес, который вы создали на шаге 1.

  11. Разместите SSH-ключ на сервере — доступ к серверу по паролю отключен в образе. Можно добавить несколько ключей. Поддерживаются типы ключей еd25 519, rsa, ecdsa и dsa. Выберите существующий ключ или нажмите Добавить SSH-ключ. Введите имя ключа и вставьте публичный SSH-ключ в формате OpenSSH. Нажмите Добавить.

    В образе SSH-порт изменен на 22 022.

  12. В поле 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.
  13. Нажмите Создать. Настройка образа займет несколько минут.

Создать облачный сервер с GitLab Runner

  1. Создайте регистрационный токен для GitLab Runner по инструкции Create a project runner with a runner authentication token официальной документации GitLab.

  2. В панели управления перейдите в раздел Облачная платформаСерверы.

  3. Нажмите Создать сервер.

  4. Выберите готовый образ Cloud GitLab Runner <version>.

  5. Выберите конфигурацию облачного сервера с vCPU от 2 ядер, RAM от 2 ГБ.

  6. Разместите SSH-ключ на сервере — доступ к серверу по паролю отключен в образе. Можно добавить несколько ключей. Поддерживаются типы ключей еd25 519, rsa, ecdsa и dsa. Выберите существующий ключ или нажмите Добавить SSH-ключ. Введите имя ключа и вставьте публичный SSH-ключ в формате OpenSSH. Нажмите Добавить.

  7. В поле User data вставьте скрипт, который выполнится при загрузке системы:

    #cloud-config

    write_files:
    - path: "/opt/gomplate/values/user-values.yaml"
    permissions: "0644"
    content: |
    gitlabURL: "<gitlab_server_url>"
    token: "<runner_token>"

    Укажите:

    • <gitlab_server_url> — URL сервера с GitLab, к которому подключается GitLab Runner;
    • <runner_token> — регистрационный токен GitLab Runner, который вы создали на шаге 1.
  8. Нажмите Создать.