With npm just do:
$ [sudo] npm install -g dockerlint
Once installed it's as easy as:
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
In order to treat warnings as errors, use the
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
For docker-compose use a
docker-compose.yml such as the following:
--- dockerlint: image: redcoolbeans/dockerlint volumes: - ./Dockerfile:/Dockerfile
Then simply run:
docker-compose up dockerlint
This will validate the
Dockerfile in your current directory.
Running from a git clone
If you've cloned this repository, you will need the following prerequisites:
Installing prerequisites on ubuntu:
sudo apt-get update sudo apt-get install make sudo apt-get install npm sudo ln -s /usr/bin/nodejs /usr/bin/node sudo npm install -g coffee-script
You can run
make deps # runs npm install make js && coffee bin/dockerlint.coffee
If you're building on Windows, you'll have to set the path to your
npm config set dockerlint:winmake "mingw32-make.exe"
or pass it to every invocation:
npm run build:win --dockerlint:winmake=mingw32-make.exe
- Add support for --version which checks against a specific Docker version
- Refactor code to move the rule specific functions into a Rule class
MIT, please see the LICENSE file.
- Fork it
- Create your feature branch (
git checkout -b my-new-feature)
- Commit your changes (
git commit -am 'Add some feature')
- Push to the branch (
git push origin my-new-feature)
- Create new Pull Request