Gere arquivos `docker-compose.yml` para aplicativos com vários serviços, incluindo serviços, volumes, redes e variáveis de ambiente.
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:O Docker Compose define aplicativos com vários contêineres como um único arquivo YAML. Cada serviço especifica uma imagem ou contexto de compilação, portas expostas, variáveis de ambiente, montagens de volume e associação de rede. O Compose cuida de iniciar todos os serviços na ordem correta com um único comando <code>`docker compose up`</code>.
Adicione uma linha por serviço. Defina o nome da imagem, as portas (no formato host:contêiner), as variáveis de ambiente e as montagens de volume. Os volumes nomeados (sem / no início) são declarados automaticamente na seção de volumes de nível superior. As montagens de ligação (que começam com / ou ./) são repassadas tal como estão.
Este gerador é voltado para o Compose V2 (padrão desde o Docker Desktop 3.x e o Docker Engine 23.x). Na <code>versão</code> obsoleta<code>:</code> a chave de nível superior foi omitida intencionalmente. As dependências do serviço podem ser expressas com <code>`depends_on`</code> - adicione-a ao campo `ports` como uma chave YAML por enquanto ou edite a saída diretamente.