У нас есть рой докеров для котов, и они работают довольно хорошо.
Но проблема возникает, когда нам нужно обновить конфигурации (в основном .war-файл) для tomcat.
То, что мы делаем, создаем новый образ докера с обновленными конфигами и размещаем его на нашем рое докеров с помощью следующей команды,
docker service update --image docker-image-name:1.2.3 service-name
Сервис также обновляется должным образом. но проблема в том, что для каждого контейнера время простоя составляет 30-60 секунд, когда старый образ докера заменяется новым изображением в каждом контейнере один за другим.
Все контейнеры в Swarm являются живыми из nginx, и, поскольку Docker случайным образом выбирает контейнеры, мы не знаем, какой контейнер отключить из nginx.
Мы отбрасываем запросы для каждого контейнера примерно на 1 минуту, когда происходит обновление.
Любые предложения о том, как этого избежать?