Sunday, October 25, 2026 4,350 lists 78,100 records on file
List your app or device

  1. Home
  2. Linters
  3. Hadolint

Hadolint

What it is

Hadolint is a Dockerfile linter for Linux, macOS, web, and Windows. It parses each Dockerfile into an abstract syntax tree, then checks that structure for errors and stated best practices. Shell commands in Dockerfile RUN instructions are checked with ShellCheck, so findings can use either Hadolint’s DL rule prefix or ShellCheck’s SC prefix. You can ignore selected rules, override severities, set failure thresholds, choose report formats, and configure label schemas and trusted registries. Reports can be emitted as tty, JSON, Checkstyle, Code Climate, GitLab Code Climate, GNU, Codacy, SonarQube, SARIF, or JUnit. The tool runs through Docker or Podman images, prebuilt macOS, Windows, and Linux binaries, or installation methods such as Homebrew, Scoop, Nix, containers, and source builds. Documented integrations cover CI services, editors, and pre-commit hooks. An online version is also available. The project is GPL-3.0 licensed, with v2.15.1 listed as the latest release.

For and against

For

  • Checks Dockerfile structure and best practices
  • Uses ShellCheck for Bash in RUN commands
  • Many configurable rules and report formats
  • Works with CI, editors, and pre-commit
  • Free GPL-3.0 open-source plan

Against

  • No free trial is offered
  • Configuration requires choosing rules and thresholds

The verdict

Hadolint combines Dockerfile analysis with ShellCheck coverage for embedded Bash. Its broad output, integration, and installation options make it adaptable to different development workflows.

Who it suits

Hadolint suits developers and teams maintaining Dockerfiles who want configurable lint rules, structured reports, and CI or editor integration. It also fits workflows using pre-commit hooks or containerized tooling.

Plans and prices

Hadolint

Free

Open-source Dockerfile linter · GPL-3.0

Every plan, in full

On the record

Bash analysis
It uses ShellCheck to lint Bash code inside Dockerfile RUN instructions.github.com · read 8 Oct 2026
CI integrations
The project documents integrations including GitHub Actions, GitLab CI, Azure DevOps Pipelines, Bitbucket Pipelines, CircleCI, Drone CI, Jenkins, and Travis CI.github.com · read 8 Oct 2026
Configuration
Users can configure ignored rules, severity overrides, failure thresholds, output format, label schemas, and trusted registries.github.com · read 8 Oct 2026
Container use
Hadolint can run from Docker or Podman container images published on Docker Hub and GitHub Container Registry.github.com · read 8 Oct 2026
Downloads
Prebuilt binaries are offered for OSX, Windows, and Linux, with installation also described through Homebrew, Scoop, Nix, containers, or source builds.github.com · read 8 Oct 2026
Editor integrations
Documented editor integrations include VS Code, Atom, Emacs, Geany, Sublime Text, Vim, and NeoVim.github.com · read 8 Oct 2026
Latest release
The release page opened for this research lists v2.15.1 as the latest release.github.com · read 8 Oct 2026
License
The repository identifies its license as GPL-3.0.github.com · read 8 Oct 2026
Online version
The README links to an online version hosted at hadolint.github.io/hadolint.github.com · read 8 Oct 2026
Output formats
Supported report formats include tty, json, checkstyle, codeclimate, gitlab_codeclimate, gnu, codacy, sonarqube, sarif, and junit.github.com · read 8 Oct 2026
Parsing
The linter parses Dockerfiles into an abstract syntax tree and applies rules to it.github.com · read 8 Oct 2026
Pre-commit
Hadolint is available as a pre-commit hook, including a Docker-based hook option.github.com · read 8 Oct 2026
Purpose
Hadolint is a Dockerfile linter that checks Dockerfiles for errors and best practices.github.com · read 8 Oct 2026
Rule sources
Its rules include Hadolint rules with the DL prefix and ShellCheck rules with the SC prefix.github.com · read 8 Oct 2026

Alternatives to Hadolint

Every alternative, ranked