у меня есть билд-сервер с докером и teamcity-agent'ом, на нём я собираю образы и отправляю их в artifactory
Есть пачка хостов с докером для разных сред (дев-тест-прод - на каждую среду по несколько хостов) - как правильнее деплоить на них приложения?
пока вижу только 2 варианта:
- Ставить на каждый из хостов teamcity-agent и указывать его в agent requirements для каждой build-conf - вроде проще всего, но 500+ MB RAM на каждом из ~20 хостов
- Передавать докерхост+сертификат для каждого хоста в какой-то деплоймент-сервер, который будет раскатывать приложения на соотв. хостах
Какие подводные? Есть ли способы лучше?
(кубер использовать пока не могу, т.к. нет ни экспертизы, ни времени учить, ни санкции "сверху" его эксплуатировать)
Я в контейнере с агентом храню артефакты, а при деплое отдельным шагом просто по ssh заливаю архив, грохаю старый образ докера, и разворачиваю его заново. Но я сам только учусь поэтому принимать сие как руководство к действию не советую)
В общем решил закинуть ssh-ключи в корневую билд-конфу и запускать нужные docker run через deployment build configuration, через ssh-exec
Обсуждают сегодня