Как изменить проверку работоспособности докера, не перестраивая образ? - PullRequest
0 голосов
/ 14 декабря 2018

В настоящее время можно указать проверку работоспособности в Dockerfile при создании изображения с помощью инструкции HEALTHCHECK .Вы можете указать команду для запуска, время ожидания перед выполнением первой проверки после запуска контейнера (--start-period), как часто запускать проверку работоспособности (--interval), как долго ждать проверку работоспособностизавершить (--timeout) и сколько раз проверка состояния должна быть повторена в случае неудачи (--retries).Все это запекается в изображении и может быть видно с помощью docker inspect на изображении, которое доступно локально.

Однако, похоже, нет никаких аргументов для docker run, которые могли бы переопределить эти настройки.Если вы используете изображение, созданное третьей стороной, которая выполняет проверку работоспособности, вы зависите от того, что они решили (или не решили) при создании изображения.Это может быть проблемой, когда, например, проверка работоспособности завершается слишком рано, создавая потерянный процесс, который будет оставаться в таблице PID контейнера и хост-машины неограниченное время.При частых проверках работоспособности, которые часто истекают, таблица PID может заполняться за считанные дни.

Есть ли способ переопределить настройки проверки работоспособности изображения или полностью отключить проверку работоспособности, не перестраивая ее?

1 Ответ

0 голосов
/ 14 декабря 2018

Кажется, что вы МОЖЕТЕ переопределить значения по умолчанию для изображения: https://docs.docker.com/engine/reference/run/#healthcheck

Аргументы проверки работоспособности для docker run:

  --health-cmd            Command to run to check health
  --health-interval       Time between running the check
  --health-retries        Consecutive failures needed to report unhealthy
  --health-timeout        Maximum time to allow one check to run
  --health-start-period   Start period for the container to initialize before starting health-retries countdown
  --no-healthcheck        Disable any container-specified HEALTHCHECK
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...