Program to reverse Docker images into Dockerfiles
Clone or download
Latest commit 150654a Oct 4, 2018
Type Name Latest commit message Commit time
Failed to load latest commit information.
.gitignore Bug fixes and output formatting issues Jun 7, 2018
LICENSE Add License file Jun 5, 2018 @dancashman: update go get instructions Aug 8, 2018
ignore.go Intial Commit Jun 5, 2018
main.go Fixed error output Oct 4, 2018
scanner.go Bug fixes and output formatting issues Jun 7, 2018


Whaler is a Go program which is designed to reverse engineer docker images into the Dockerfile that created it. It currently performs the following actions

  • Generates a Dockerfile from an Image
  • Searches added filenames for potential secret files
  • Extracts files that were added by the Docker ADD/COPY Instructions
  • It also displays misc. information such as ports open, the user it runs as and environment variables.

alt text

You can read more about this on my blog Here

How to build it

Git clone the project into your $GOPATH/src directory and perform the following command

go get -u
cd $GOPATH/src/
go build .

How to run it

Usage of ./Whaler:
  -f string
    	File containing images to analyze seperated by line
    	Filters filenames that create noise such as node_modules. Check ignore.go file for more details (default true)
  -sV string
    	Set the docker client ID to a specific version -sV=1.36
  -v	Print all details about the image
  -x	Save layers to current directory