← All Tools

Docker Compose Builder🔒 100% local

Generate docker-compose.yml. Privacy-first, no server uploads, no tracking.

Related Tools

API ClientAPI Key RedactorAspect Ratio Scaler

Turns comma-separated service lines into a docker-compose.yml skeleton. Each line is name, image, optional port mapping, then any extra fields: a field containing an equals sign becomes an environment entry (except restart=, which sets the restart policy) and a field containing a colon becomes a volume mount. The YAML is assembled as text, with a container_name and a restart policy added to every service.

How to use it

  1. Write one service per line, for example web, nginx, 80:80.
  2. Append extra fields on the same line as more comma-separated values, such as NODE_ENV=production or ./data:/app/data.
  3. Press Process, then copy the fenced YAML out of the output box and save it as docker-compose.yml.

Worked example

web, nginx, 80:80, restart=always api, node:20-alpine, 3000:3000, NODE_ENV=production, ./data:/app/databecomesGenerated docker-compose.yml for 2 services: ```yaml version: "3.9" services: web: image: nginx container_name: web restart: always ports: - "80:80" api: image: node:20-alpine container_name: api restart: unless-stopped ports: - "3000:3000" volumes: - "./data:/app/data" environment: NODE_ENV: production ```

The default restart policy is unless-stopped, which is why only the web service reads always - it was set explicitly.

When to use it

What it does not do