Embed this tool on your site
<iframe src="https://devtoolbox.dedyn.io/tools/docker-compose-generator" width="100%" height="720" frameborder="0" title="Docker Compose Generator"></iframe>

Docker Compose Generator

Build a docker-compose.yml in your browser: services, ports, volumes, environment variables, depends_on, and restart policies. Copy or download the YAML — nothing is sent to a server.

0 services
Writes a top-level name: (Compose v2) so you can avoid default folder-based project names.
Tip: After generating YAML, validate it with docker compose config or use the Docker Compose Validator.
 

Frequently Asked Questions

Should I use docker-compose or docker compose?

Use docker compose (space) — that is Docker Compose v2, built into the Docker CLI. The old docker-compose (hyphen) was v1 and is end-of-life.

How do I keep secrets out of docker-compose.yml?

Use environment variables and a .env file (not committed to Git), or use your deployment platform’s secret store. For Swarm/Kubernetes, prefer secrets/configs.

What are good default restart policies?

For most long-running services on a single server, unless-stopped is a good default. Use on-failure for batch jobs, and avoid restarting crash-looping containers without investigating logs.

Related Tools & Guides

Docker Compose Validator YAML Validator Dockerfile Builder Docker Compose Complete Guide
Keyboard Shortcuts
Ctrl+Enter Regenerate
Ctrl+Shift+C Copy YAML
Ctrl+L Clear