Как автоматизировать docker-compose на сервере?

Сейчас я имею два контейнера которые загружаю на гит хаб и докерхаб автоматом их подтягивает/билдит и уже на сервере я делаю докер пул и запускаю. Так же локально я запускал через docker-compose , но как правильно загружать его на сервер и запускать и желательно это все автоматизировать? Как в таком случае в docker-compose отслеживать что если один контейнер упал и например не перезапустился? Для меня пока оверхед использовать сварм или к8б. Спасибо!


Ответы (1 шт):

Автор решения: AfsmNGhr

Как в таком случае в docker-compose отслеживать что если один контейнер упал

Добавить healthcheck

и например не перезапустился?

Добавить restart: always для docker-compose или restart_policy для swarm

Так же локально я запускал через docker-compose, но как правильно загружать его на сервер и запускать и желательно это все автоматизировать?

На сервер попадает только стек файл, который удаляется после деплоя, и загружаются images из registry.

Использовал docker-compose + ansible + bash (для получения одного stack файла).

Пример: CI & CD

И результаты

Для меня пока оверхед использовать сварм или к8б

Советую использовать swarm, даже для одного сервера (staging / production).

Overhead будет писать свою обвязку + тестирование + поддержка.

→ Ссылка