该工具的主要特性包括:
按层显示 Docker 镜像内容;
指出每一层的变化;
评估 “镜像的效率”;
快速的构建/分析周期;
和 CI 集成;
支持多个镜像和容器引擎:比如 docker、docker-archive 和 podman;
安装和使用
根据你的系统,可以选择不同的安装方式。作者为不同系统准备了编译好的可执行程序,比如 MacOS 可以这么安装:
$ brew install dive
你也可以通过发布页获得对应的文件:https://github.com/wagoodman/dive/releases。
此外,如果你有 Go 开发环境,可以通过源码编译安装。
对了,还可以通过 docker 安装哦,比如:
$ docker pull wagoodman/dive
至于使用,一般使用最简单的方式:
$ dive <your-image-tag>
比如分析 Go 语言镜像:
$ dive golang:1.14
Fetching image… (this can take a while with large images)
Parsing image…Analyzing image…Building cache…
可以看到该镜像构建各个层