Hadolint
Metrics as of , from the GitHub or GitLab API of each repository. Refreshed monthly.
What Hadolint is
Hadolint is a Dockerfile linter written in Haskell. It parses a Dockerfile into an abstract syntax tree and applies rules to it. Shell code in RUN instructions is checked with ShellCheck. Rules can be ignored inline or globally through a YAML configuration file. Rule severity can be overridden per rule. It can restrict FROM images to trusted registries and validate labels against a schema. Output formats include JSON, SARIF, JUnit, Checkstyle, SonarQube and GitLab Code Climate. It ships as binaries for macOS, Windows and Linux and as a container image. An online version runs in the browser.
Written from the project's README, read .
- Category
- Code quality and static analysis
- License
- GPL-3.0
- Language
- Haskell
- Changelog
- Releases on GitHub
Repository metrics
Status
activeLast commit within 90 days of the fetch date.Computed from the last commit date and the archive flag on the fetch date. See the status rules.
Alternatives
Listed code quality and static analysis tools, same primary language first, then by GitHub stars. Each line gives one fact from the tool's documentation where it differs from Hadolint's, with its source.
ShellCheck: Languages or files analysed: Shell scripts in the sh, bash, dash, ksh and BusyBox dialects. source: Docs: shellcheck(1) manual
Ruff: Languages or files analysed: Python files (*.py, *.pyi), Jupyter Notebooks (*.ipynb) and pyproject.toml. source: Docs: Configuring Ruff
ESLint: Languages or files analysed: ECMAScript/JavaScript code; JSX parsing when enabled. source: README
mypy: Languages or files analysed: Python programs with type hints. source: README
golangci-lint: Languages or files analysed: Go code. source: README
Semgrep: Languages or files analysed: Community supported in Semgrep CE: C/C++, C#, Go, Java, JavaScript, TypeScript, Kotlin, Python, Ruby, Rust, PHP, Scala, Swift, Terraform. source: Docs: Supported languages for Semgrep Community Edition (CE)
Infer: Languages or files analysed: Java, C++, Objective-C and C. source: README
PHPStan: Languages or files analysed: PHP code. source: README
How to install
brew install hadolintQuestions
Is Hadolint open source?
Yes. Hadolint is released under GPL-3.0, an OSI-approved license, as reported by the GitHub API on 2026-09-22.
Is Hadolint maintained?
On 2026-09-22, the last commit to the default branch was on 2026-08-24, so the listed status is active. Rule: Last commit within 90 days of the fetch date.
How many GitHub stars does Hadolint have?
12,425 stars on 2026-09-22, from the GitHub API. The number is refreshed at each monthly update.
What language is Hadolint written in?
The repository's primary language, as reported by the GitHub API, is Haskell.
How do I install Hadolint?
The README gives this command: brew install hadolint
Sources
- GitHub REST API: repository, read
- GitHub REST API: commits, read
- GitHub REST API: latest release, read
- GitHub REST API: contributors, read
- README, read