Docker Compose Visualizer — Free Online
Skip to main content

Docker Compose Visualizer

Paste or upload a docker-compose.yml to visualize services, detect config smells, and export a Mermaid diagram.

About the Docker Compose Builder

Docker Compose files define multi-container application stacks — web servers, databases, caches, message queues — and their networking, volumes, and environment configuration. Writing Compose YAML from scratch means knowing the schema for every service option. This tool parses existing Compose files to visualize the service graph, detects common configuration smells, and helps you build new configurations correctly.

What this tool does

Service Graph

Visualizes service dependencies as a Mermaid graph — see which services depend on which at a glance.

Smell Detection

Flags common issues: missing healthchecks, hardcoded secrets in environment variables, missing resource limits, and privileged containers.

Schema Validation

Validates your Compose file against the Compose Specification — catches typos in service keys and invalid option combinations.

100% Client-Side

All parsing and analysis runs in your browser. Your service definitions and image names are never transmitted.

Pipeline

Frequently asked

Is my Docker Compose data sent to a server?
No. All parsing and analysis runs 100% in your browser. Your service definitions, image names, and configuration never leave your device.
What is Docker Compose?
Docker Compose is a tool for defining and running multi-container Docker applications. You describe your services, networks, and volumes in a docker-compose.yml file, then start everything with "docker compose up". It is the standard way to run local development environments.
What is the difference between docker-compose.yml v2 and v3?
Version 2 is for single-host deployments (local dev). Version 3 added support for Docker Swarm deployment. For modern usage, the version field is optional — Docker Compose v2 (the CLI plugin) reads both formats. The Compose Specification is now the canonical reference.
What is the difference between a volume and a bind mount?
A volume is managed by Docker and stored in Docker's storage area. A bind mount maps a host directory directly into the container. Use bind mounts for development (live code reloading). Use volumes for production data persistence (databases, uploads).
What does "depends_on" do in Docker Compose?
"depends_on" controls startup order — it ensures a service starts before the services that depend on it. However, it does not wait for the service to be "ready" (e.g. a database accepting connections). Use healthchecks with "condition: service_healthy" for true readiness waiting.