dive
by
wagoodman

Description: A tool for exploring each layer in a docker image

View on GitHub ↗

Summary Information

Updated 1 hour ago
Added to GitGenius on March 4th, 2026
Created on May 13th, 2018
Open Issues & Pull Requests: 208 (+0)
Number of forks: 1,988
Total Stargazers: 54,306 (-1)
Total Subscribers: 365 (+0)

Issue Activity (beta)

Open issues: 97
New in 7 days: 0
Closed in 7 days: 0
Avg open age: 1,054 days
Stale 30+ days: 97
Stale 90+ days: 91

Recent activity

Opened in 7 days: 0
Closed in 7 days: 0
Comments in 7 days: 0
Events in 7 days: 0

Top labels

  • bug (61)
  • enhancement (30)
  • ui (22)
  • distribution (20)
  • oci-interop (15)
  • report (6)
  • changelog-ignore (4)
  • documentation (4)

Most active issues this week

No issue events were indexed in the last 7 days.

Repository Insights (GitGenius)

Median issue/PR response: 177.9 days
Mean response time: 587.1 days
90th percentile: 1771.8 days
Tracked items: 138

Most active contributors

Detailed Description

Dive is a command-line tool written in Go that enables users to explore Docker and OCI container images layer by layer, identify optimization opportunities, and reduce image size. The tool provides both an interactive terminal user interface for detailed analysis and a non-interactive mode for continuous integration pipelines.

The core functionality centers on visualizing Docker image architecture. When users run dive with a Docker image tag, ID, or digest, the tool displays the image's layer structure on the left side of the interface while showing the combined file tree contents of selected layers on the right. Users can navigate through the file tree using arrow keys and explore how files change across layers. The tool indicates which files have been added, modified, removed, or remain unchanged in each layer, with the ability to toggle between viewing changes for a specific layer or aggregated changes up to that point.

A key feature is the image efficiency estimation displayed in the lower left pane. This experimental metric calculates wasted space within the image, which may result from duplicating files across layers, moving files between layers, or incomplete file removal. The tool provides both a percentage efficiency score and the total wasted file space in bytes. This analysis helps developers understand where their Docker images are bloated and how to optimize their Dockerfiles.

Dive supports multiple container engines and image sources through the source option. Users can analyze images from the Docker engine, Docker tar archives stored on disk, or Podman engine on Linux systems. The tool also supports quick build-and-analyze cycles through the dive build command, which replaces the standard docker build command and immediately analyzes the resulting image without requiring separate commands.

For continuous integration workflows, dive offers a non-interactive mode activated by setting the CI environment variable to true. In this mode, the tool bypasses the UI and provides pass or fail results based on configurable metrics defined in a .dive-ci configuration file. This allows teams to enforce image efficiency standards in their build pipelines and prevent unnecessarily bloated images from being deployed.

The project maintains active development with 177 events tracked from the primary maintainer wagoodman, along with contributions from other developers. GitGenius data shows 138 tracked issues and pull requests with a median response latency of approximately 4270 hours. The most frequently tagged issues involve bugs (61 occurrences), enhancement requests (30), and UI improvements (22), indicating ongoing refinement of both functionality and user experience.

Installation is available across multiple platforms and package managers, including Ubuntu and Debian via debs or snap, RHEL and CentOS via rpm, Arch Linux via pacman, macOS via Homebrew or MacPorts, Windows via Chocolatey, scoop, or winget, and NixOS. The tool can also be run directly via Docker by mounting the Docker socket. The project is licensed under MIT and accepts donations through PayPal.

dive
by
wagoodmanwagoodman/dive

Repository Details

Fetching additional details & charts...