Проблемный домен
Представьте, что Swarm управляет контейнером с состоянием, например, базу данных, и другой контейнер полагается на нее, например, служба, которая выполняет долго выполняемое задание (минуты, иногда часы), которое не допускает остановки базы данных (или даже самой себя) во время ее выполнения.
Например, база данных, импортирующая дамп в несколько ГБ.
Существует также система CI / CD, которая заботится о создании новых версий контейнеров и их развертывании в Swarm или передаче образа в Docker Hub, который затем вызывает определенный веб-крюк, который запускает событие развертывания.
Вопрос
Можно ли как-нибудь собрать свои контейнеры, чтобы Swarm мог знать, нормально ли это обновлять или нет? Точно так же, как HEALTHCHECK
сообщает, нужно ли его перезапускать, что позволит Swarm знать, что «теперь безопасно перезапустить этот контейнер».
Или система CI / CD отвечает за проверку безопасности перезапуска контейнеров с сохранением состояния и только после этого запускает команду обновления для роения?
Заранее спасибо!