Dockerfile Linter
Analyze Dockerfiles for security issues and best practices violations.
Last reviewed by the Radiatus Cloud team
✅ Best Practices
- • Use specific image tags (not :latest)
- • Run as non-root user
- • Use multi-stage builds
- • Minimize layers with &&
- • Use .dockerignore file
Want this automated for your stack?
We build CI/CD, Kubernetes & IaC pipelines that scale.
Lint a Dockerfile for issues and bad practice
A Dockerfile that builds is not necessarily a good Dockerfile: it may be larger, slower to build, or less secure than it should be. This linter reviews a Dockerfile for best-practice violations and issues, so the images you build are efficient and sound.
What a linter catches that a build does not
A build only tells you the Dockerfile works, not whether it is well-written. A linter flags the things that work but should not: ordering instructions so the cache is wasted on every build, combining or splitting layers poorly, using deprecated syntax, missing a non-root user, or leaving in packages that need not be there. These are the difference between a Dockerfile that merely functions and one that builds fast and ships lean.
Cheap quality, kept local
Linting takes a moment and catches issues that would otherwise accumulate as slow builds and bloated images. It is a review of your own Dockerfile, and it runs in your browser, so nothing is uploaded.
Related tools
- CI/CD Security Gap Analyzer — Checklist based analyzer for CI/CD pipeline security gaps.
- Docker Security Scanner — A new tool extracted from the codebase.
- Terraform Scanner — A new tool extracted from the codebase.
- SQL Formatter — Format and indent SQL queries for readability. Handles joins, subqueries and CTEs, supports common dialects, and runs entirely in your browser.
Frequently Asked Questions
What does a Dockerfile linter catch that a build does not?
A build only confirms the file works; a linter flags what works but is suboptimal, such as cache-wasting instruction order, poor layering, deprecated syntax and missing hardening.
Why does instruction order affect build speed?
Because Docker caches layers in order, so putting frequently-changing steps early invalidates the cache for everything after them, making every build slower than necessary.
Is this the same as the security analyzer?
It overlaps: this focuses on overall best practice and efficiency, while the security analyzer focuses on hardening. Both review a Dockerfile you provide.
Why keep images lean?
Because smaller images build and deploy faster and have a smaller attack surface, since every included package is something that could contain a vulnerability.
Is my Dockerfile uploaded?
No. The review runs entirely in your browser.
Privacy & Security
Analysis happens locally.
About This Tool
This tool runs entirely in your browser. No data is sent to any server, ensuring complete privacy. Simply use the interface above to get started — no registration or login required.
Disclaimer: This tool is provided "as is" without warranty of any kind. Results are for educational and utility purposes.