Docker (Составить? Рой?) Как выполнить проверку работоспособности перед тем, как разоблачить cotainer - PullRequest
0 голосов
/ 26 апреля 2020

У меня есть веб-приложение (netcore), работающее в docker контейнере. Если я обновлю его под нагрузкой, он не сможет обрабатывать запросы, пока не будет пробел. Это может быть ошибка в моем приложении или в. net, я сейчас ищу обходной путь. Если я нажму на приложение одним http-запросом, прежде чем выставлю его на траффи c, он будет работать, как и ожидалось.

Я бы хотел получить такое поведение:

  1. В запущенный сервер получает последнюю версию контейнера.
  2. Запустите контейнер, отсоединенный от сети.
  3. Запустите проверку работоспособности на нем, если проверка работоспособности не удалась - остановитесь.
  4. Удалите старый контейнер.
  5. Присоедините новый контейнер и начните обработку traffi c.

Я использую compose atm и имею несколько ограниченные знания инфраструктуры docker, и проблема должна быть что-то хорошо понятым, но я не смог найти что-то в гугле на топи c.

Это звучит как Kubernetees на этом этапе, но я хотел бы сделать это как можно более простым.

1 Ответ

0 голосов
/ 30 апреля 2020

Я искал развертывание Blue / Green, и его довольно просто найти.

Например:

https://github.com/Sinkler/docker-nginx-blue-green

https://coderbook.com/@marcus / How-to-Do-Do-Do-Do-нулевой простой-развертывания-docker -containers /

Swarm имеет функцию, которая также может быть полезна: https://docs.docker.com/engine/reference/commandline/service_update/

...