欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  移动技术

Docker镜像分析工具dive原理解析

程序员文章站 2022-03-10 09:06:12
今天推荐一个这样的开源工具,用于探索 docker 镜像,各层内容以及发现缩小 docker/oci 镜像大小的方法。这个工具就是:dive。工具地址:,star 数:22k+。这个工具可以清晰得看到...

今天推荐一个这样的开源工具,用于探索 docker 镜像,各层内容以及发现缩小 docker/oci 镜像大小的方法。这个工具就是:dive。

工具地址:,star 数:22k+。

这个工具可以清晰得看到镜像每一层都包含哪些内容,方便你分析是否有必要,如下图所示。

Docker镜像分析工具dive原理解析

特性

该工具的主要特性包括:

  • 按层显示 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也可以,打开界面如下:

Docker镜像分析工具dive原理解析

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视图:向下滚动页面

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持。