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