Docker Compose Validator — Multi-Container YAML Syntax & Logic Check
Validate docker-compose.yml syntax, service definitions, networks, volumes, and environment variables. Catches YAML errors, broken depends_on references, missing image/build, invalid restart policies, and more — with context-aware hints.
How to Use Docker Compose Validator — Multi-Container YAML Syntax & Logic Check
How to Use the Docker Compose Validator
Step 1: Paste Your docker-compose.yml
Copy the full contents of your docker-compose.yml file and paste it into the input area. The validator runs instantly as you type.
Step 2: Check YAML Validity First
If the YAML is malformed (bad indentation, wrong quoting, duplicate keys), a parse error banner appears with the exact line and column from the YAML parser. Fix this before addressing schema issues.
Step 3: Review the Issue Summary
Once the YAML is valid, the summary shows how many services were parsed and the issue count broken down by severity — errors (must fix), warnings (best practice), and info (recommendations).
Step 4: Expand Issues for Hints
Click any issue row that shows a ▼ indicator to expand a detailed hint with suggested fixes. Issues include the context (e.g., "service: web", "volume: db-data") so you can locate the problem quickly.
Step 5: Try the Example Files
Use the three example buttons to see the validator in action on an invalid YAML file, a file with schema errors (missing image, broken depends_on, undeclared volumes), and a clean production Compose file.
Checks Performed
| Severity | Check |
|---|---|
| Error | YAML parse failure (line + column reported) |
| Error | Missing "services" top-level key |
| Error | Service missing both "image" and "build" |
| Error | "depends_on" references a non-existent service |
| Error | Service depends on itself |
| Error | Invalid "image", "build", or "container_name" type |
| Error | Invalid restart policy value |
| Error | "network_mode" and "networks" both set |
| Warning | Base image using :latest tag |
| Warning | Unpinned or unrecognised port format |
| Warning | Service network not declared in top-level "networks" |
| Warning | Named volume used but not declared in top-level "volumes" |
| Warning | Unknown top-level or service-level keys |
| Warning | Empty "depends_on" |
| Warning | Environment list item with bad format |
| Warning | Healthcheck missing "test" key |
| Info | "version" field (obsolete in Compose Specification) |
Frequently Asked Questions
Most Viewed Tools
Screen Size Converter — Diagonal Dimension Tool
Calculate screen width and height from diagonal size and aspect ratio. Convert between inches and centimeters for displays, TVs, and monitors with instant dimension calculations.
Use Tool →DPI Calculator — Print Resolution Tool
Calculate DPI (dots per inch), image dimensions, and print sizes. Convert between pixels and physical dimensions for printing and displays.
Use Tool →TOTP Code Generator — 2FA Testing Tool
Generate time-based one-time passwords from a TOTP secret key. Enter your base32 secret, choose a period and digit length, and get the current and next codes with a live countdown timer. Useful for testing and debugging 2FA integrations.
Use Tool →JSONL Formatter — Line-by-Line Validator
Format, validate, and inspect JSON Lines (JSONL) and NDJSON files. Validates each line individually, reports parse errors by line number, outputs compact JSONL or a pretty-print preview, and lets you download the cleaned file.
Use Tool →JSON to Zod — Schema Generator
Generate Zod validation schema code from a JSON sample object. Infers z.string(), z.number(), z.boolean(), z.array(), z.object(), and z.null() types automatically. Handles nested objects, arrays of objects with optional field detection, and outputs copy-ready TypeScript with import and z.infer type alias.
Use Tool →Password Entropy Calculator — Crack Time Estimator
Calculate the information-theoretic bit entropy of any password or API key. Detects character set pools automatically, shows the total number of possible combinations, and estimates crack time across five attack scenarios from rate-limited web logins to GPU cracking clusters.
Use Tool →TLS Cipher Suite Checker — Strength Analyzer
Check TLS protocol version compatibility and cipher suite strength ratings against current best practices. Supports IANA and OpenSSL cipher names — rates each suite as Strong, Weak, or Deprecated and explains why.
Use Tool →Secret Scanner — API Key & Credential Detector
Scan pasted text, code, or config files for accidentally exposed API keys, tokens, passwords, and private keys. Detects 50+ secret types across AWS, GitHub, Stripe, OpenAI, and more — all client-side, nothing leaves your browser.
Use Tool →Related DevOps & Infrastructure Tools
HTTP Header Analyzer — Security & CORS Audit
Parse and analyze HTTP request or response headers. Identifies categories, explains each header, flags missing security headers, and detects duplicates or suspicious values — entirely in your browser.
Use Tool →SSL Certificate Decoder — Expiry & SAN Inspector
Decode X.509 SSL/TLS certificates and RSA private keys in your browser. View subject, issuer, SANs, validity dates, key type, serial number, and SHA-256/SHA-1 fingerprints. Optionally check if a certificate and private key match.
Use Tool →robots.txt Validator — Crawl Rule Checker
Validate your robots.txt file against the Robots Exclusion Protocol. Checks directive syntax, path formats, Crawl-delay values, and Sitemap URLs. Previews crawl rules per user-agent group. Free and runs entirely in your browser.
Use Tool →Port Number Lookup — Common TCP/UDP Service & Protocol Database
Searchable reference for 80+ well-known TCP and UDP ports. Look up any port number or service name to see the official protocol, service description, port range (well-known/registered), and security recommendations for risky ports.
Use Tool →Random User Agent Generator — Browser String Tool
Generate random browser user agent strings for testing and development.
Use Tool →Dockerfile Linter — Optimize & Secure Your Container Builds
Lint Dockerfile instructions for best practices, security issues, and layer optimization. Flags unpinned base images, root user, ADD vs COPY, apt-get mistakes, shell-form CMD, and more — with fix guidance for each issue.
Use Tool →Query String Parser — URL Parameter Decoder
Parse URL query strings into readable key-value pairs. Decode parameters and inspect URL search queries with ease.
Use Tool →GitHub Actions Validator — Workflow Syntax & CI/CD Security Audit
Validate GitHub Actions workflow YAML for syntax errors, missing required fields, deprecated commands, mutable action refs, outdated action versions, and broken job dependencies. Get per-job results with fix hints in real time.
Use Tool →Share Your Feedback
Help us improve this tool by sharing your experience