Yandex Cloud
Поиск
Связаться с намиПодключиться
  • Истории успеха
  • Документация
  • Блог
  • Все сервисы
  • Статус работы сервисов
    • Доступны в регионе
    • Инфраструктура и сеть
    • Платформа данных
    • Контейнеры
    • Инструменты разработчика
    • Бессерверные вычисления
    • Безопасность
    • Мониторинг и управление ресурсами
    • ИИ для бизнеса
    • Бизнес-инструменты
  • Все решения
    • По отраслям
    • По типу задач
    • Экономика платформы
    • Безопасность
    • Техническая поддержка
    • Каталог партнёров
    • Обучение и сертификация
    • Облако для стартапов
    • Облако для крупного бизнеса
    • Центр технологий для общества
    • Партнёрская программа
    • Поддержка IT-бизнеса
    • Облако для фрилансеров
    • Обучение и сертификация
    • Блог
    • Документация
    • Мероприятия и вебинары
    • Контакты, чаты и сообщества
    • Идеи
    • Тарифы Yandex Cloud
    • Промоакции и free tier
    • Правила тарификации
  • Истории успеха
  • Документация
  • Блог
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»
Yandex Managed Service for GitLab
  • Начало работы
  • Управление доступом
  • Правила тарификации
  • Справочник Terraform
  • Метрики Monitoring
  • Аудитные логи Audit Trails
  • История изменений
  • Вопросы и ответы
  • Обучающие курсы

В этой статье:

  • Перед началом работы
  • Создайте инстанс
  • Настройте рабочее окружение
  • Добавьте SSH-ключи в GitLab
  • Начните работу с репозиторием

Как начать работать с Managed Service for GitLab

Статья создана
Yandex Cloud
Улучшена
Обновлена 21 июля 2025 г.
  • Перед началом работы
  • Создайте инстанс
  • Настройте рабочее окружение
  • Добавьте SSH-ключи в GitLab
  • Начните работу с репозиторием

Чтобы начать работу с сервисом:

  1. Создайте инстанс.
  2. Настройте рабочее окружение.
  3. Добавьте SSH-ключи в GitLab.
  4. Начните работу с репозиторием.

Важно

Если вы начинаете работу с Managed Service for GitLab, чтобы перенести в него проекты из пользовательской инсталляции GitLab, обратитесь к инструкции.

Подробнее об отличиях Managed Service for GitLab от пользовательской инсталляции GitLab Community Edition читайте в разделе Преимущества сервиса перед пользовательской инсталляцией GitLab.

Перед началом работыПеред началом работы

Консоль управления
  1. Перейдите в консоль управления, затем войдите в Yandex Cloud или зарегистрируйтесь, если вы еще не зарегистрированы.

  2. Если у вас еще нет каталога, создайте его:

    1. В консоли управления в списке слева выберите нужное облако.

    2. Справа сверху нажмите кнопку Создать каталог.

    3. Введите имя каталога. Требования к имени:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    4. (Опционально) Введите описание каталога.

    5. Выберите опцию Создать сеть по умолчанию. Будет создана сеть с подсетями в каждой зоне доступности. Также в этой сети будет создана группа безопасности по умолчанию, внутри которой весь сетевой трафик разрешен.

    6. Нажмите кнопку Создать.

  3. Назначьте вашему аккаунту в Yandex Cloud роль vpc.user и роль gitlab.editor или выше. Эти роли позволяют создать инстанс.

    Примечание

    Если вы не можете управлять ролями, обратитесь к администратору вашего облака или организации.

Создайте инстансСоздайте инстанс

Важно

После создания инстанса нельзя изменить его сетевую конфигурацию: зону доступности и подсеть.

Консоль управления
CLI
  1. В консоли управления выберите каталог, в котором нужно создать инстанс GitLab.

  2. Выберите сервис Managed Service for GitLab.

  3. Нажмите кнопку Создать инстанс.

  4. В верхней части страницы:

    1. Введите имя инстанса. Оно должно быть уникальным в рамках Yandex Cloud.

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    2. (Опционально) Введите описание инстанса.

    3. (Опционально) Добавьте метки для разделения инстансов на логические группы.

    4. (Опционально) Установите защиту инстанса от случайного удаления пользователем.

  5. В блоке Конфигурация:

    1. Выберите тип инстанса. После создания инстанса можно изменить его тип на более производительный.

    2. Укажите зону доступности. После создания инстанса изменить его зону доступности невозможно.

    3. Укажите подсеть, в которой будет размещен инстанс. Технические ограничения Yandex Cloud временно не позволяют выбрать подсеть с диапазоном адресов 192.168.0.0/24.

    4. Выберите группу безопасности или создайте новую:

      1. Нажмите кнопку Создать группу.
      2. Введите имя и описание группы безопасности. Правила для группы безопасности вы сможете добавить позже в сервисе Virtual Private Cloud.
      3. Нажмите кнопку Создать.

      Если не задать отдельную группу безопасности, будет использована группа безопасности по умолчанию, созданная в сети инстанса.

      Настройте группу безопасности так, чтобы правила разрешали входящий и исходящий трафик с нужных портов и IP-адресов.

      Важно

      От настройки группы безопасности зависит работоспособность и доступность инстанса Managed Service for GitLab.

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

    5. Выберите размер диска. После создания инстанса размер его диска можно увеличить.

    6. Укажите доменное имя инстанса — для него будут автоматически созданы нужные DNS-записи в домене .gitlab.yandexcloud.net.

      Доменное имя должно быть уникальным в рамках Yandex Cloud.

      • Длина — от 5 до 50 символов.
      • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
      • Первый и последний символ — не дефис.
    7. Задайте срок хранения автоматических резервных копий (в днях).

    8. (Опционально) Включите правила ревью кода. Для этого выберите подходящую конфигурацию правил ревью.

      Примечание

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

  6. В блоке Данные администратора укажите:

    • Электронная почта — адрес электронной почты администратора инстанса GitLab. На этот адрес придет письмо со ссылкой для создания пароля.
    • Логин — логин администратора.
  7. (Опционально) В блоке Дополнительные настройки включите удаление образов без тегов. Настройка влияет на свободное место на диске инстанса.

  8. Нажмите кнопку Создать.

  9. Дождитесь, когда инстанс будет готов к работе: его статус на панели Managed Service for GitLab сменится на Running. Это может занять некоторое время.

Если у вас еще нет интерфейса командной строки Yandex Cloud (CLI), установите и инициализируйте его.

По умолчанию используется каталог, указанный при создании профиля CLI. Чтобы изменить каталог по умолчанию, используйте команду yc config set folder-id <идентификатор_каталога>. Также для любой команды вы можете указать другой каталог с помощью параметров --folder-name или --folder-id.

  1. Посмотрите описание команды CLI для создания инстанса Managed Service for GitLab:

    yc managed-gitlab instance create --help
    
  2. Выберите подсеть:

    yc vpc subnet list
    

    Результат:

    +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
    |          ID          |           NAME            |      NETWORK ID      | ROUTE TABLE ID |       ZONE        |      RANGE      |
    +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
    | e9bnlm18l70a******** |   default-kz1-a   | enpe3m3fa00u******** |                |   kz1-a   | [10.128.0.0/24] |
    +----------------------+---------------------------+----------------------+----------------+-------------------+-----------------+
    
  3. Создайте инстанс GitLab (в примере приведены не все доступные параметры):

    yc managed-gitlab instance create \
      --name first-instance \
      --resource-preset-id <класс_хостов> \
      --disk-size <размер_диска_ГБ> \
      --admin-login <логин администратора> \
      --admin-email <электронная_почта_администратора> \
      --domain-prefix <доменное_имя_инстанса> \
      --deletion-protection \
      --approval-rules <конфигурация_правил_ревью_кода> \
      --subnet-id <идентификатор_подсети>
    

    Где:

    • --name — имя инстанса, уникальное в рамках Yandex Cloud. Требования к имени:

      • длина — от 2 до 63 символов;
      • может содержать строчные буквы латинского алфавита, цифры и дефисы;
      • первый символ — буква, последний — не дефис.
    • --resource-preset-id — класс хостов. Он определяет технические характеристики виртуальной машины, на которой будет развернут инстанс GitLab. Возможные значения:

      • s2.micro — 2 vCPU, 8 ГБ RAM.
      • s2.small — 4 vCPU, 16 ГБ RAM.
      • s2.medium — 8 vCPU, 32 ГБ RAM.
      • s2.large — 16 vCPU, 64 ГБ RAM.
    • --disk-size — размер диска в ГБ.

    • --admin-login — логин администратора инстанса GitLab.

    • --admin-email — адрес электронной почты администратора. На этот адрес придет письмо со ссылкой для создания пароля.

    • --domain-prefix — доменное имя инстанса. Для него будут автоматически созданы нужные DNS-записи в домене .gitlab.yandexcloud.net.

      Доменное имя должно быть уникальным в рамках Yandex Cloud.

      • Длина — от 5 до 50 символов.
      • Может содержать строчные буквы латинского алфавита, цифры и дефисы.
      • Первый и последний символ — не дефис.
    • --deletion-protection — защита инстанса от случайного удаления пользователем.

    • --approval-rules — конфигурация правил ревью кода. Возможные значения:

      • BASIC — базовая.
      • STANDARD — стандартная.
      • ADVANCED — продвинутая.

      Примечание

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

    • --subnet-id — идентификатор выбранной подсети.

    Результат:

    id: c17c60tpadua********
    folder_id: b1g2slt7p9ug********
    created_at: "2025-07-20T18:34:16.078Z"
    updated_at: "2025-07-20T18:34:16.078Z"
    name: test-cli
    resource_preset_id: s2.small
    disk_size: "107374182400"
    status: RUNNING
    admin_login: admin-gl
    admin_email: user@example.com
    domain: test-domain-user.gitlab.yandexcloud.net
    subnet_id: e9b4rrpuu2a********
    backup_retain_period_days: "7"
    deletion_protection: true
    approval_rules_id: BASIC
    gitlab_version: 17.11.6
    

    Подробнее о команде читайте в справочнике CLI.

Примечание

В Managed Service for GitLab при создании инстанса автоматически генерируется SSL-сертификат. Дополнительная настройка для работы по протоколу HTTPS не требуется.

Настройте рабочее окружениеНастройте рабочее окружение

  1. Активируйте инстанс Managed Service for GitLab:

    1. Перейдите по ссылке, полученной на электронную почту администратора после создания инстанса.
    2. Измените пароль администратора.
    3. Авторизуйтесь с помощью логина и пароля администратора.
  2. (Опционально) Создайте группу, в которой будет размещен проект с репозиторием.

    Если есть несколько проектов, удобно объединять пользователей в группы. Это позволяет:

    • предоставлять права в определенные проекты каждой группе;
    • просматривать Issues и мерж-реквесты по группам;
    • просматривать аналитику по активности группы.

    Подробнее см. в документации GitLab.

  3. Создайте пустой проект, в котором будет размещен репозиторий.

  4. Создайте пользователей и добавьте их в группу или проект с ролью Maintainer или Owner.

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

Добавьте SSH-ключи в GitLabДобавьте SSH-ключи в GitLab

  1. Создайте пару из открытого и закрытого SSH-ключей для аккаунта в GitLab:

    Linux/macOS
    Windows 10/11
    Windows 7/8
    1. Откройте терминал.

    2. Создайте новый ключ с помощью команды ssh-keygen:

      ssh-keygen -t ed25519 -C "<опциональный_комментарий>"
      

      Вы можете передать в параметре -C пустую строку, чтобы не добавлять комментарий, или не указывать параметр -C вообще — в таком случае будет добавлен комментарий по умолчанию.

      После выполнения команды вам будет предложено указать имя и путь к файлам с ключами, а также ввести пароль для закрытого ключа. Если задать только имя, пара ключей будет создана в текущей директории. Открытый ключ будет сохранен в файле с расширением .pub, закрытый ключ — в файле без расширения.

      По умолчанию команда предлагает сохранить ключ под именем id_ed25519 в директории /home/<имя_пользователя>/.ssh. Если в этой директории уже есть SSH-ключ с именем id_ed25519, вы можете случайно перезаписать его и потерять доступ к ресурсам, в которых он используется. Поэтому рекомендуется использовать уникальные имена для всех SSH-ключей.

    Если у вас еще не установлен OpenSSH, установите его по инструкции.

    1. Запустите cmd.exe или powershell.exe (предварительно обновите PowerShell).

    2. Создайте новый ключ с помощью команды ssh-keygen:

      ssh-keygen -t ed25519 -C "<опциональный_комментарий>"
      

      Вы можете передать в параметре -C пустую строку, чтобы не добавлять комментарий, или не указывать параметр -C вообще — в таком случае будет добавлен комментарий по умолчанию.

      После выполнения команды вам будет предложено указать имя и путь к файлам с ключами, а также ввести пароль для закрытого ключа. Если задать только имя, пара ключей будет создана в текущей директории. Открытый ключ будет сохранен в файле с расширением .pub, закрытый ключ — в файле без расширения.

      По умолчанию команда предлагает сохранить ключ под именем id_ed25519 в папку C:\Users\<имя_пользователя>/.ssh. Если в этой директории уже есть SSH-ключ с именем id_ed25519, вы можете случайно перезаписать его и потерять доступ к ресурсам, в которых он используется. Поэтому рекомендуется использовать уникальные имена для всех SSH-ключей.

    Создайте ключи с помощью приложения PuTTY:

    1. Скачайте и установите PuTTY.

    2. Добавьте папку с PuTTY в переменную PATH:

      1. Нажмите кнопку Пуск и в строке поиска Windows введите Изменение системных переменных среды.
      2. Справа снизу нажмите кнопку Переменные среды....
      3. В открывшемся окне найдите параметр PATH и нажмите Изменить.
      4. Добавьте путь к папке в список.
      5. Нажмите кнопку ОК.
    3. Запустите приложение PuTTYgen.

    4. В качестве типа генерируемой пары выберите EdDSA. Нажмите Generate и поводите курсором в поле выше до тех пор, пока не закончится создание ключа.

      ssh_generate_key

    5. В поле Key passphrase введите надежный пароль. Повторно введите его в поле ниже.

    6. Нажмите кнопку Save private key и сохраните закрытый ключ. Никому не сообщайте ключевую фразу от него.

    7. Нажмите кнопку Save public key и сохраните открытый ключ в файле <имя_ключа>.pub.

  2. Запустите SSH-агент:

    Linux/MacOS
    Windows
    1. Выполните команду:

      ssh-agent -s
      
    2. Чтобы SSH-агент запускался при входе в систему, в файл ~/.profile добавьте команду запуска:

      ssh-agent -s
      
    1. Откройте контекстное меню кнопки Пуск.
    2. Выберите пункт Управление компьютером.
    3. Перейдите в раздел Службы и приложения → Службы.
    4. Откройте контекстное меню службы SSH agent и выберите пункт Свойства.
    5. На вкладке Главное измените тип запуска с Выключена на Автоматически.
    6. Нажмите кнопку OK и запустите службу.
  3. Добавьте ключ в SSH-агент:

    ssh-add <путь_к_закрытому_ключу>
    
  4. Присвойте публичный SSH-ключ аккаунту в GitLab.

  5. Проверьте, что вы можете подключиться к GitLab:

    ssh -T git@<домен_инстанса_GitLab>
    

    Пример:

    ssh -T git@example.gitlab.yandexcloud.net
    

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

    The authenticity of host 'gitlab.example.com (35.231.145.151)' can't be established.
    ECDSA key fingerprint is SHA256:HbW3g8zUjNSksFbqTiUWPWg2Bq1x8xdGUrliXFzSnUw.
    Are you sure you want to continue connecting (yes/no)? yes
    Warning: Permanently added 'gitlab.example.com' (ECDSA) to the list of known hosts.
    

    Введите yes и нажмите Enter.

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

    Welcome to GitLab, @<логин>!
    

    В случае ошибки запустите подключение в режиме Verbose, чтобы получить логи:

    ssh -Tvvv git@<домен_инстанса_GitLab>
    

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

Начните работу с репозиториемНачните работу с репозиторием

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

  1. Установите клиент Git.

  2. Клонируйте репозиторий по протоколу SSH.

    Что делать в случае ошибки Permission denied (publickey)

    При клонировании может возникнуть ошибка:

    Cloning into '<название_проекта>'...
    git@<домен_инстанса_GitLab>: Permission denied (publickey).
    fatal: Could not read from remote repository.
    
    Please make sure you have the correct access rights
    and the repository exists.
    

    Если вы получили такую ошибку:

    1. Создайте и откройте конфигурационный файл для настройки SSH-ключей:

      nano ~/.ssh/config
      
    2. Добавьте в него содержимое:

      Host <домен_инстанса_GitLab>
         IdentityFile <путь_к_закрытому_ключу>
      

      В параметре IdentityFile укажите абсолютный путь к закрытому ключу, который вы создали для проекта GitLab.

    3. Сохраните файл.

    4. Снова склонируйте репозиторий по SSH.

  3. Перейдите в каталог с репозиторием:

    cd <имя_проекта>
    
  4. Внесите изменения в файлы репозитория.

  5. Проиндексируйте и примените изменения в локальном репозитории:

    git add . && git commit -m "<название_коммита>"
    
  6. Отправьте изменения в удаленный репозиторий:

    git push origin main
    

Была ли статья полезна?

Следующая
Все инструкции
Проект Яндекса
© 2025 ТОО «Облачные Сервисы Казахстан»