TGViewer
DevOps на минималках DevOps на минималках @devopseri · 2.78K subscribers
Post #394 464
Настраиваем простой healthcheck для Docker-контейнера!

Контейнер может быть запущен, но приложение внутри него уже не отвечает. Поэтому одного docker ps часто недостаточно: нужен healthcheck, который будет регулярно проверять состояние сервиса.

Представим простой HTTP-сервис, который отвечает на /health:
curl -f http://localhost:8080/health


Если команда возвращает код 0, контейнер считается здоровым. Если команда падает несколько раз подряд, Docker помечает контейнер как unhealthy.

В Dockerfile можно добавить HEALTHCHECK:
HEALTHCHECK --interval=30s --timeout=3s --retries=3 \
CMD curl -f http://localhost:8080/health || exit 1


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

Соберём образ:
docker build -t app-with-health .


Запустим контейнер:
docker run -d --name app app-with-health


Теперь статус будет виден прямо в списке контейнеров:
docker ps


В выводе можно увидеть состояние:
Up 2 minutes (healthy)


Если нужно посмотреть healthcheck подробнее, используем inspect:
docker inspect --format '{{json .State.Health}}' app


А чтобы вывести только текущий статус:
docker inspect --format '{{.State.Health.Status}}' app


Ожидаемый результат:
healthy


Healthcheck особенно полезен в связке с оркестраторами и deploy-скриптами, можно отличать “процесс запущен” от “приложение реально готово принимать запросы”.
  • ❤ 2
  • 👍 2
More from @devopseri
  1. Sep 21, 2026Из вашего резюме вообще понятно, что вы умеете как DevOps-инженер? Мы разбили работу DevOp…
  2. Sep 19, 2026Когда ты уже станешь настоящим DevOps? Открываешь вакансию: Linux, Docker, Kubernetes, CI/…
  3. Sep 19, 2026Знали, зачем в Bash иногда используют exec вместо обычного запуска команды? Обычно команду…
  4. Sep 17, 2026Сколько времени вы тратите на отчеты, которые можно собрать автоматически? Если каждый мес…
  5. Sep 12, 2026Делаем безопасный backup конфига перед изменением! Перед правкой nginx, systemd unit, dock…
  6. Sep 5, 2026Проверяем HTTP endpoint из shell-скрипта! Иногда нужно быстро понять, жив ли сервис: API,…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →