kube-score
Static code analysis for Kubernetes definitions with opinionated security and reliability checks.
Smarter Dockerfile linting for optimized, secure, and best-practice container images.

Hadolint is a high-performance Dockerfile linter built in Haskell, designed to provide developers with immediate feedback on container image construction. It operates by parsing Dockerfiles into an Abstract Syntax Tree (AST), allowing for sophisticated rule-based analysis that goes beyond simple regex-based linting. A core differentiator is its native integration with ShellCheck, which enables Hadolint to lint the shell scripts embedded within RUN instructions—a common source of security vulnerabilities and bloat. In the 2026 landscape, Hadolint remains the industry standard for shift-left container security, helping teams enforce best practices like using specific base image tags, minimizing image layers, and avoiding root-user execution. Its ability to output results in multiple formats, including JSON, SARIF, and Codeclimate, ensures seamless integration with modern CI/CD orchestrators and IDEs. By catching misconfigurations before the build phase, Hadolint reduces compute costs associated with failed builds and mitigates supply chain risks by identifying insecure package manager usage and unauthorized repository sources.
Hadolint is a high-performance Dockerfile linter built in Haskell, designed to provide developers with immediate feedback on container image construction.
Explore all tools that specialize in parsing dockerfile ast. This domain focus ensures Hadolint delivers optimized results for this specific requirement.
Explore all tools that specialize in integrating shellcheck. This domain focus ensures Hadolint delivers optimized results for this specific requirement.
Explore all tools that specialize in outputting in json/sarif/codeclimate. This domain focus ensures Hadolint delivers optimized results for this specific requirement.
Parses Dockerfiles into a structured Abstract Syntax Tree rather than using regular expressions.
Directly invokes ShellCheck to analyze the Bash/Sh code within RUN commands.
Supports the Static Analysis Results Interchange Format for deep integration with security dashboards.
Allows administrators to define a whitelist of approved container registries in the config file.
Logic that understands the relationship between different stages in a multi-stage Dockerfile.
Configurable exit codes based on the severity level (Error, Warning, Info, Style) of the findings.
Ensures OCI (Open Container Initiative) compliant labels are present and correctly formatted.
Install Hadolint via package manager (e.g., 'brew install hadolint' or 'scoop install hadolint').
Alternatively, pull the official Docker image using 'docker pull hadolint/hadolint'.
Navigate to your project directory containing the Dockerfile.
Execute a basic linting scan using the command 'hadolint Dockerfile'.
Review the output codes (e.g., DL3006, DL3008) provided in the terminal.
Create a '.hadolint.yaml' configuration file in the project root to manage rule overrides.
Define 'ignored' rules or 'trustedRegistries' within the configuration file to reduce noise.
Integrate ShellCheck locally to enhance the analysis of complex RUN scripts.
Add Hadolint to your CI/CD pipeline (e.g., as a step in a GitHub Action workflow).
Configure your IDE (VS Code/IntelliJ) with the Hadolint extension for real-time feedback.
All Set
Ready to go
Verified feedback from other users.
"Extremely well-received for its speed and specific rule documentation. Users praise the ShellCheck integration as its greatest strength."
Post questions, share tips, and help other users.
Static code analysis for Kubernetes definitions with opinionated security and reliability checks.

Template-free Kubernetes configuration management for declarative application customization.

The fastest polyglot Git hooks manager for high-performance engineering teams.

The world's most powerful IDE for Kubernetes, supercharged by AI-driven operations and multi-cloud observability.

The ultimate open-source orchestration tool for code quality, security, and consistent delivery.

The ultimate pull request automation engine for high-velocity engineering teams.

Harness delivers intelligent AI automation, so your team ships code faster, safer, and smarter.

Run Kubernetes locally with a single command to streamline containerized application development.