// the find
wagoodman/dive
A tool for exploring each layer in a docker image
dive is a terminal UI for inspecting Docker/OCI image layers, showing what files changed in each layer and estimating wasted space. It's aimed at developers trying to debug bloated images or understand what each build step actually puts on disk. Works with Docker, Podman, and OCI archives.
- CI mode (CI=true) with configurable pass/fail rules for efficiency thresholds and wasted bytes is genuinely useful for catching image size regressions in pipelines
- Supports multiple image sources: live Docker/Podman daemons, and various tar archive formats including OCI, estargz, and zstd — good coverage for non-standard workflows
- The filetree viewmodel has solid test coverage with golden file snapshots, which makes the core diff logic reasonably trustworthy
- Keybindings are fully configurable in YAML, which is a small but appreciated detail compared to most TUI tools
- Still self-described as 'beta quality' after years and 54k stars — the disclaimer feels stale but does reflect real rough edges, particularly around some image formats and daemon compatibility
- Podman support is Linux-only and clearly second-class; the resolver_unsupported.go stub for other platforms is a dead end for anyone not on Linux
- The efficiency score is labeled 'experimental' and can be misleading — it flags whoveted space from intermediate layers that are never actually pulled in multi-stage builds, producing false alarms
- No way to diff two separate images against each other — you can only inspect layers within a single image, which limits usefulness when tracking changes between image versions