Создание файлов docker-compose.yml для многосервисных приложений с сервисами, томами, сетями и переменными среды.
services:
app:
image: myapp:latest
ports:
- "3000:3000"
environment:
- NODE_ENV=production
networks:
- app-network
restart: unless-stopped
database:
image: postgres:16
ports:
- "5432:5432"
environment:
- POSTGRES_PASSWORD=secret
volumes:
- db-data:/var/lib/postgresql/data
depends_on:
- app
networks:
- app-network
restart: unless-stopped
networks:
app-network:
driver: bridge
volumes:
db-data:Docker Compose описывает многоконтейнерные приложения в виде одного файла YAML. Каждый сервис определяет образ или контекст сборки, открытые порты, переменные среды, подключение томов и принадлежность к сети. Compose обеспечивает запуск всех сервисов в правильном порядке с помощью одной команды <code>`docker compose up</code>`.
Добавьте по одной строке для каждого сервиса. Укажите имя образа, порты (в формате «хост:контейнер»), переменные среды и подключения томов. Именованные тома (без начального символа «/») автоматически объявляются в разделе томов верхнего уровня. Привязанные тома (начинающиеся с «/» или «./») передаются без изменений.
Этот генератор предназначен для Compose V2 (используется по умолчанию начиная с Docker Desktop 3.x и Docker Engine 23.x). Устаревшая <code>версия:</code> ключ верхнего уровня намеренно опущен. Зависимости сервиса можно указать с помощью <code>depends_on</code> - пока добавьте его в поле ports в виде ключа YAML или отредактируйте вывод напрямую.