🐳 Docker Compose Validator
Validate docker-compose.yml and explain services, networks, and volumes. Paste your compose file and get a full report.
About this tool
Paste a docker-compose.yml (or compose.yaml) file and the tool parses it,
reports whether it is syntactically valid, and explains every service it finds: image, build context,
published ports, environment variables, volumes, depends_on links, restart policy, networks, and healthchecks.
Use it to catch typos before docker compose up rejects the file, or to understand a
compose file written by someone else without reading YAML by hand.
Example: a service named web with image: nginx:alpine and
ports: ["80:80"] is reported as one service exposing host port 80 to container port 80.
A service that references a volume or network not declared at the top level is flagged as a warning.
The parser understands the Compose file structure (services, networks,
volumes, secrets, configs) and recognises both the legacy
top-level version key and the modern attribute-less format.
FAQ
Does this connect to Docker or run my containers? ›
No. The tool only reads the YAML text you paste and checks its structure. It never runs docker, never pulls images, and never starts containers. Think of it as a linter for your compose file.
What counts as a warning vs an error? ›
An error is anything that would make Docker reject the file outright: invalid YAML, a service that is not a mapping, or a missing required services key. A warning is something that parses but is likely a mistake: a port in the wrong format, a depends_on pointing at a service that does not exist, or a volume reference with no matching declaration.
Will it rewrite or fix my compose file? ›
No. The tool is read-only — it reports what it found and flags problems, but it never edits your file. You apply the fixes yourself in your editor.
Does it support Compose profiles and extends? ›
Yes. The parser recognises the profiles, extends, and environment_file keys on each service and reports them. It does not evaluate the extends target against an external file, only against services defined in the same document.