Какие основные команды используются для управления сервисами в Docker Compose

«Какие основные команды используются для управления сервисами в Docker Compose» — вопрос из категории Devops, который задают на 10% собеседований Python Разработчик. Ниже — развёрнутый ответ с разбором ключевых моментов.

Ответ

Для управления жизненным циклом сервисов, описанных в файле docker-compose.yml, используются следующие ключевые команды:

  • docker-compose up — Создает и запускает контейнеры.

    • С флагом -d (--detach) запускает контейнеры в фоновом (detached) режиме.
    • С флагом --build принудительно пересобирает образы перед запуском.
    # Запустить в фоновом режиме
    docker-compose up -d
  • docker-compose down — Останавливает и удаляет контейнеры, сети, и тома (volumes), созданные командой up.

    # Остановить и удалить все ресурсы
    docker-compose down
  • docker-compose ps — Показывает статус запущенных сервисов.

  • docker-compose logs — Выводит логи сервисов.

    • С флагом -f (--follow) можно следить за логами в реальном времени.
    # Посмотреть логи сервиса web
    docker-compose logs -f web
  • docker-compose exec — Выполняет команду внутри запущенного контейнера.

    # Запустить интерактивную оболочку bash в контейнере db
    docker-compose exec db bash

Примечание: Если ваш файл конфигурации называется иначе, чем docker-compose.yml, его нужно указать с помощью флага -f:

docker-compose -f my-custom-compose.yml up