Назад к вопросам
Junior
64
questionbank
Что такое Docker Compose?
Sobes Copilot
Получайте ответы в реальном времени
Ответ от нейросети
sobes.tech AI
Инструмент для определения и запуска многоконтейнерных приложений Docker. Позволяет управлять множеством связанных сервисов в одном файле конфигурации.
Ключевые особенности:
- Работает на всех платформах, поддерживающих Docker.
- Использует формат YAML-файла (
docker-compose.yml) для описания сервисов, сетей и томов. - Позволяет определить зависимости между сервисами.
- Обеспечивает воспроизводимость окружения для разработки, тестирования и продакшена.
Основные команды:
| Команда | Описание |
|---|---|
up |
Создает и запускает сервисы. |
down |
Останавливает и удаляет контейнеры, сети, тома и образы (по умолчанию). |
build |
Собирает образы для сервисов. |
start |
Запускает остановленные сервисы. |
stop |
Останавливает запущенные сервисы. |
restart |
Перезапускает сервисы. |
ps |
Отображает статус контейнеров. |
logs |
Отображает логи сервисов. |
exec |
Выполняет команду в работающем контейнере. |
Простой пример файла docker-compose.yml:
version: '3.8' # Версия синтаксиса Compose
services:
web: # Имя сервиса
image: nginx:latest # Используемый образ
ports:
- "80:80" # Проброс портов (хост:контейнер)
volumes:
- ./html:/usr/share/nginx/html # Монтирование тома (хост:контейнер)
app: # Еще один сервис
build: . # Собирает образ из Dockerfile в текущей директории
ports:
- "5000:5000"
depends_on: # Зависимость: app запустится после web
- web