Skip to main content

Docker Compose — Управление сервисами

Docker Compose используется для управления многоконтейнерными приложениями. Основной файл конфигурации — docker-compose.yml.


Запуск и остановка сервисов

Запуск контейнеров

docker compose up -d

Запускает все сервисы, описанные в docker-compose.yml.

Флаг:

-d — запуск в фоне (detached mode).


Остановка контейнеров

docker compose down

Останавливает и удаляет:

  • контейнеры
  • сети

Не удаляет volumes.


Принудительное пересоздание контейнеров

docker compose up -d --force-recreate

Контейнеры будут пересозданы даже если конфигурация не изменилась.

Важно:

Volumes при этом не удаляются.


Пересборка контейнеров

Полная пересборка образов

docker compose build --no-cache

Игнорирует cache Docker и пересобирает все слои.

Используется когда:

  • обновился base image
  • изменились зависимости

Пересборка и запуск

docker compose up -d --build

Docker:

  1. пересоберёт образы
  2. запустит контейнеры

Обновление образов из registry

docker compose pull

Скачивает новые версии образов из Docker Registry.

Часто используется перед обновлением:

docker compose pull && docker compose up -d

Перезапуск сервисов

Рестарт одного сервиса

docker compose restart <service>

Пример:

docker compose restart nginx

Рестарт всех сервисов

docker compose restart

Перезапуск через stop/start

Иногда используется для полной остановки:

docker compose stop <service> && docker compose start <service>

Полезные команды

Запуск одного сервиса

docker compose up -d <service>

Просмотр конфигурации compose

docker compose config

Показывает итоговый конфиг после обработки:

  • env variables
  • overrides

Очень полезно при отладке.