Healthchecks в Docker Compose для Laravel: как сделать так, чтобы сервисы запускались в правильном порядке

Если вы хоть раз поднимали Laravel-проект в Docker Compose, наверняка сталкивались с ситуацией: контейнер с приложением стартует раньше, чем база данных успевает принять соединения, и миграции падают с ошибкой SQLSTATE[08006] или Connection refused . Перезапустишь — всё работает. На локалке терпимо, но в продакшене — это в падающие деплои. По умолчанию Docker считает контейнер «живым», если его процесс запущен. Но это не всегда означает, что сервис внутри готов к работе. Решение — правильно настроенные healthcheck’и и условие depends_on с параметром condition: service_healthy . В этой статье разберём, как это сделать для типичного стека Laravel: PHP-FPM, PostgreSQL, Redis и Nginx.

https://habr.com/ru/articles/1040132/

#docker #dockercompose #laravel #php #healthchecks #phpfpm #redis #pgsql #nginx

Healthchecks в Docker Compose для Laravel: как сделать так, чтобы сервисы запускались в правильном порядке

Если вы хоть раз поднимали Laravel-проект в Docker Compose, наверняка сталкивались с ситуацией: контейнер с приложением стартует раньше, чем база данных успевает принять соединения, и миграции падают...

Хабр