Docker logs?
наверное уже поздно, я рестартрнул композ..
Докер не прибивает контейнеры по unhealthy статусу, и даже перезапускать не умеет. Приложение скорее всего либо само умерло, либо его прибили извне, например ООМ. Но без логов сложно что-то утверждать
у контейнера который стоял рядом, екситкод с цифрой 2
exitcode может значить температуру на луне в фаренгейтах
А зачем тогда там healthcheck?
1. Чтобы другие инструменты, вроде мониторинга, могли кидать тебе алерты, что приложение не отвечает. Молча уводить контейнер в вечную перезагрузку не очень prod ready решение 2. В depends_on можно указывать condition: service_healthy, тогда зависимые от приложения контейнеры будут запускаться только после прохождения healthcheck
depends_on по хелсчеку убрали же вроде
В 3.9 вернули
Видимо я живу 6 лет неправильно. Но всегда использую хелсчек, отлично отслеживает работу приложения и перезагружает как раз когда что-то пошло неправильно.
Видимо приложение само умирает, и поэтому контейнер перезапускается и становится unhealthy
Вы точно разбираетесь в механизме хелсчека?
https://stackoverflow.com/a/48538213
Мне лень ради какого-то коммента в телеге лезть в исходники докера, чтобы это подтвердить. Но я видел кучу раз, что сервис был unhealthy, но не перезапускался, с разными restart policy (unless stopped, always)
Я ж говорю, видимо я что делаю не так и у меня хелсчек отоично работает. Особенно в сварм режиме.
swarm может работать иначе, чем обычный docker-compose
Обсуждают сегодня