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 stars104 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,187
Forks104
Contributors0
Open Issues3
Last commit2 months 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 53 minutes ago

Related Projects

divedive

A tool for exploring each layer in a docker image

Stars54,269
Forks1,988
Last commit6 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,323
Forks832
Last commit6 days ago
kanikokaniko

Build Container Images In Kubernetes

Stars15,779
Forks1,533
Last commit1 year ago
skopeoskopeo

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

Stars11,017
Forks936
Last commit3 days 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