Open-Awesome
CategoriesAlternativesStacksSelf-HostedExplore
Open-Awesome

© 2026 Open-Awesome. Curated for the developer elite.

TermsPrivacyAboutGitHubRSS
  1. Home
  2. Containers
  3. Whaler

Whaler

GPL-3.0Go1.0

A Go program that reverse engineers Docker images to reconstruct the original Dockerfile.

GitHubGitHub
1.2k stars102 forks0 contributors

What is Whaler?

Whaler is a Go program that reverse engineers Docker images to reconstruct the original Dockerfile that created them. It analyzes image layers, extracts added files, and detects potential secrets, helping developers audit, debug, and understand containerized applications.

Target Audience

DevOps engineers, security auditors, and developers who need to inspect, audit, or reverse engineer Docker images for debugging, security analysis, or recovering lost build instructions.

Value Proposition

Whaler provides a straightforward, command-line tool for reconstructing Dockerfiles from existing images, offering insights into image composition and potential security issues without requiring access to the original source code.

Overview

Program to reverse Docker images into Dockerfiles

Use Cases

Best For

  • Auditing Docker images for security vulnerabilities and exposed secrets
  • Reverse engineering Docker images when the original Dockerfile is lost or unavailable
  • Understanding how third-party or legacy Docker images were constructed
  • Extracting files added via Docker ADD/COPY instructions for inspection
  • Analyzing image metadata such as environment variables, ports, and users
  • Debugging container issues by reconstructing the build process

Not Ideal For

  • Teams needing deep binary forensics or content-based secret scanning in Docker images
  • Developers who prefer GUI-based tools for container inspection and analysis
  • Projects with complex multi-stage Docker builds where reconstruction might be incomplete

Pros & Cons

Pros

Dockerfile Reconstruction

Automatically generates a Dockerfile by analyzing image layers, as stated in the README for understanding build processes without original source code.

Secret File Detection

Scans added filenames for potential secrets, aiding security audits by flagging suspicious file names, based on the README's feature list.

File Extraction

Extracts files added via ADD/COPY instructions, allowing direct inspection of image contents, as highlighted in the README.

Metadata Insights

Displays key configuration like ports, user, and environment variables for quick analysis, per the README's description.

Easy Docker Integration

Can be run in a Docker container with simple commands, simplifying setup and use without Go installation, as shown in the run examples.

Cons

Filename-Only Secret Scan

Only detects secrets based on filenames, not file content, which can miss embedded credentials or obfuscated names, limiting security effectiveness.

Docker Socket Dependency

Requires access to the Docker daemon socket (/var/run/docker.sock), posing security risks and restricting use in environments without Docker, as indicated in run commands.

Noise Filtering Limitations

Default filtering may not catch all noisy files like node_modules, and the README admits it's basic, potentially cluttering output.

Frequently Asked Questions

Quick Stats

Stars1,184
Forks102
Contributors0
Open Issues3
Last commit25 days ago
CreatedSince 2018

Tags

#container-security#passwords#devops#docker-security#dockerfile#secrets#security#security-tools#security-auditing#docker#container-analysis#go#docker-image#reverse-engineering

Built With

G
Go
D
Docker

Included in

Docker35.8kContainers2.0k
Auto-fetched 20 hours ago

Related Projects

divedive

A tool for exploring each layer in a docker image

Stars53,866
Forks1,992
Last commit4 months ago
DockerSlimDockerSlim

Slim(toolkit): Don't change anything in your container image and minify it by up to 30x (and for compiled languages even more) making it secure too! (free and open source)

Stars23,172
Forks825
Last commit17 days ago
kanikokaniko

Build Container Images In Kubernetes

Stars15,765
Forks1,533
Last commit11 months ago
skopeoskopeo

Work with remote images registries - retrieving information, images, signing content

Stars10,803
Forks917
Last commit23 hours ago
Community-curated · Updated weekly · 100% open source

Found a gem we're missing?

Open-Awesome is built by the community, for the community. Submit a project, suggest an awesome list, or help improve the catalog on GitHub.

Submit a projectStar on GitHub