Docker 的容器镜像是一层层叠加的,可以通过 docker inspect
命令查看镜像中的 meta 信息,或者通过 docker history
了解镜像的构建历史,不过相对来说不够清晰。
这里介绍一个很好用的工具 Dive 。
简介
容器使用的镜像是一层层叠加的,通常可以通过如下命令查看。
----- 查看某个镜像的历史
# docker history ImageName
----- 可以看到RootFS中包含的Layers信息
# docker image inspect ImageName
不过这些方式不是很直观,可以通过 Dive 分析,该工具可用来分析镜像层内容,确认如何降低其大小,有如下基本功能:
- 显示每层镜像的内容,左侧选择层右侧会显示该层的所有内容,然后可以通过箭头浏览文件树。
- 指出每层中发生的变化,会在文件树中标明修改、添加或删除的文件。
安装
直接从 Github Dive 下载对应的二进制安装包,或者压缩包也可以,都是将一个二进制文件复制到 /usr/bin
目录下。
使用时只需要指定其 Tag 就可以了。
----- 直接分析Docker中的镜像
# dive <Tag>