Docker镜像分析工具dive原理解析
程序员文章站
2022-03-10 09:06:12
今天推荐一个这样的开源工具,用于探索 docker 镜像,各层内容以及发现缩小 docker/oci 镜像大小的方法。这个工具就是:dive。工具地址:,star 数:22k+。这个工具可以清晰得看到...
今天推荐一个这样的开源工具,用于探索 docker 镜像,各层内容以及发现缩小 docker/oci 镜像大小的方法。这个工具就是:dive。
工具地址:,star 数:22k+。
这个工具可以清晰得看到镜像每一层都包含哪些内容,方便你分析是否有必要,如下图所示。
特性
该工具的主要特性包括:
- 按层显示 docker 镜像内容;
- 指出每一层的变化;
- 评估 “镜像的效率”;
- 快速的构建/分析周期;
- 和 ci 集成;
- 支持多个镜像和容器引擎:比如 docker、docker-archive 和 podman;
安装和使用
1、主要采用docker运行dive的方式,具体用法可查看官方:
https://github.com/wagoodman/dive
2、拉取dive镜像
docker pull quay.io/wagoodman/dive:latest
3、通过docker运行dive查看镜像层信息
docker run --rm -it \
-v /var/run/docker.sock:/var/run/docker.sock \
quay.io/wagoodman/dive:latest \
nginx:latest
备注:最后面的nginx:latest就是要查看的镜像名称或者直接换成镜像id也可以,打开界面如下:
keybindings
key binding | description |
---|---|
<kbd>ctrl + c</kbd> | 退出 |
<kbd>tab</kbd> or <kbd>ctrl + space</kbd> | 在图层和文件树视图之间切换 |
<kbd>ctrl + f</kbd> | 过滤文件 |
<kbd>ctrl + a</kbd> | 图层视图:查看聚合图像修改 |
<kbd>ctrl + l</kbd> | 图层视图:查看当前图层修改 |
<kbd>space</kbd> | filetree视图:折叠/取消折叠目录 |
<kbd>ctrl + a</kbd> | filetree视图: 显示/隐藏添加的文件 |
<kbd>ctrl + r</kbd> | filetree视图:显示/隐藏已删除的文件 |
<kbd>ctrl + m</kbd> | filetree视图:显示/隐藏已修改的文件 |
<kbd>ctrl + u</kbd> | filetree视图:显示/隐藏未修改的文件 |
<kbd>pageup</kbd> | filetree视图:向上滚动页面 |
<kbd>pagedown</kbd> | filetree视图:向下滚动页面 |
以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。