以下文章来源于转角遇到GitHub ,作者欧盆索思当前 Docker 的火热程度毋庸置疑 。我们都知晓 Docker 的镜像是基于层的概念构建的 。如何让镜像更小,一直是大家关注的,网上也有很多最佳实践 。有没有好的工具可以帮我们分析镜像,让我们可以更清晰得看到镜像的各个层?
今天推荐一个这样的开源工具,用于探索 Docker 镜像,各层内容以及发现缩小 Docker/OCI 镜像大小的方法 。这个工具就是:dive 。
工具地址:https://github.com/wagoodman/dive,Star 数:22k+ 。
这个工具可以清晰得看到镜像每一层都包含哪些内容,方便你分析是否有必要,如下图所示 。
文章插图
特性该工具的主要特性包括:
- 按层显示 Docker 镜像内容;
- 指出每一层的变化;
- 评估 “镜像的效率”;
- 快速的构建/分析周期;
- 和 CI 集成;
- 支持多个镜像和容器引擎:比如 docker、docker-archive 和 podman;
$ brew install dive
你也可以通过发布页获得对应的文件:https://github.com/wagoodman/dive/releases 。此外,如果你有 Go 开发环境,可以通过源码编译安装 。
对了,还可以通过 docker 安装哦,比如:
$ docker pull wagoodman/dive
至于使用,一般使用最简单的方式:$ dive <your-image-tag>
比如分析 Go 语言镜像:【项目推荐:利器—一个开源工具探究Docker 镜像的世界】
$ dive golang:1.14Fetching image... (this can take a while with large images)Parsing image...Analyzing image...Building cache...
可以看到该镜像构建各个层文章插图
今天的项目大家觉得怎么样吗?如果你喜欢,请在文章底部留言、点赞或关注转发,你的支持就是我持续更新的最大动力!
推荐阅读
- 详解Hbase底层的数据结构——LSMT
- 手动揪出内鬼——是谁在后台偷偷占用CPU?
- 计算机编程必备技巧——使用递归
- Java8——异步编程
- 开源JavaScript实用日期处理库——date-fns
- EditPlus——一款小巧功能强大的老牌代码文本编辑器
- Docker 容器编排利器 Docker Compose
- 程序员必备技能:设计模式之——组合模式
- CSS样式更改——字体设置Font&边框Border
- java 的时间利器:joda