Сервер сборки
Сборка образа на отдельном сервере и передача его через реестр.
По умолчанию приложение собирается на своём сервере развёртывания, и сборка делит с приложениями память и CPU. Отдельный сервер сборки необязателен: он собирает образ, а готовый образ попадает на сервер развёртывания через реестр образов. Один сервер сборки могут использовать несколько приложений.
Это удобно, когда сборка тяжелее работающего приложения, например next build на небольшом сервере, или
когда сборки не должны замедлять уже запущенные сервисы.
Что понадобится
- Сервер с типом «Сборка». Добавьте его в разделе Ресурсы → Серверы (свой сервер или в облаке). Рекомендуем от 4 ГБ RAM. Сервер должен быть активен, настройка завершена, а SSH-ключ доступен панели.
- Реестр образов. Подключите его в разделе «Реестры образов». Оба сервера должны иметь доступ к реестру, а учётная запись реестра — право публиковать образы.
- Другой сервер развёртывания. У приложения должен быть свой сервер развёртывания, отличный от сервера сборки.
Приложению из готового Docker-образа сервер сборки не нужен, поэтому блока в его настройках нет.
Как назначить
Откройте настройки приложения, блок «Сервер сборки»:
Где собирать приложение
Выберите сервер сборки вместо «На сервере развёртывания». Серверы, которые ещё не готовы, отмечены «· не готов» и недоступны для выбора. Под полем видны ссылки на сервер сборки и сервер развёртывания.
Реестр публикации
Выберите реестр. Для отдельного сервера сборки он обязателен. Под полем показано, куда будет публиковаться
образ: <адрес реестра>/<namespace>/<имя приложения>.
Сохранить
Настройки применятся к следующему запросу развёртывания. Развёртывания, которые уже ждут в очереди, выполнятся с прежней конфигурацией.
Чтобы вернуть сборку на сервер развёртывания, выберите «На сервере развёртывания». Реестр можно оставить или выбрать «Без реестра · локальный образ», см. Без реестра.
Кнопки «Добавить сервер» и «Управление реестрами» в шапке блока ведут к созданию сервера и списку реестров.
Как идёт развёртывание
- Сборка образа на сервере сборки.
- Публикация в реестр. Образ закрепляется по digest, поэтому на сервер развёртывания попадает ровно тот образ, который собрали.
- Загрузка на сервер развёртывания из реестра.
- Запуск приложения на сервере развёртывания.
Ход этих этапов виден в сведениях о запуске. Там же указаны сервер сборки и сервер развёртывания.
Если у приложения выбран сервер сборки, но нет реестра, запрос на развёртывание отклоняется с подсказкой выбрать реестр в настройках приложения.
Права
| Действие | Что нужно |
|---|---|
| Изменить место сборки и реестр | Право «Сервисы: создание» |
| Выбрать сервер сборки | Право «Серверы: просмотр» и доступ к этому серверу |
| Выбрать реестр | Право «Реестры образов: просмотр» |
См. Роли и права.