Linting tool for Dockerfiles based on recommendations from Dockerfile Reference and Best practices for writing Dockerfiles as of Docker 1.6.
With npm just do:
$ [sudo] npm install -g dockerlint
Once installed it's as easy as:
dockerlint Dockerfile
Which will parse the file and notify you about any actual errors (such an
omitted tag when :
is set), and warn you about common pitfalls or bad idiom
such as the common use case of ADD
.
In order to treat warnings as errors, use the -p
flag.
Alternatively there is a Docker image available.
This image provides a quick and easy way to validate your Dockerfiles, without having to install Node.JS and the dockerlint dependencies on your system.
First fetch the image from the Docker Hub:
docker pull redcoolbeans/dockerlint
You can either run it directly, or use docker-compose.
For a quick one-off validation:
docker run -it --rm -v "$PWD/Dockerfile":/Dockerfile:ro redcoolbeans/dockerlint