PassFront
  1. PassFront
  2. База знаний
  3. Docker Compose

Что делает docker compose up и как работает depends_on?

Docker Compose

`docker compose up` собирает образы, создаёт общую сеть и запускает все сервисы из compose-файла, а depends_on задаёт лишь порядок запуска — по умолчанию без ожидания готовности самого сервиса.

Что делает up

  • Читает compose.yaml, строит или подтягивает образы, создаёт сеть и volumes.
  • Стартует контейнеры и стримит логи в терминал; -d — фоновый режим, --build — принудительная пересборка.

Подвох depends_on

  • По умолчанию Compose ждёт только старта контейнера: приложение может упасть, потому что Postgres ещё инициализируется.
  • Решение — healthcheck плюс условие:
depends_on:
  db:
    condition: service_healthy
  • Вариант service_completed_successfully ждёт завершения разового контейнера, например с миграциями.

Коротко для собеседования

Команда поднимает весь стек из compose-файла: образы, общую сеть, volumes и контейнеры. Порядок из depends_on гарантирует только старт зависимостей, поэтому готовность ждут через healthcheck и condition: service_healthy, а падение базы в рантайме приложение должно переживать реконнектом.

Другие вопросы раздела