Docker鏡像分析工具dive原理解析
今天推薦一個(gè)這樣的開源工具,用于探索 Docker 鏡像,各層內(nèi)容以及發(fā)現(xiàn)縮小 Docker/OCI 鏡像大小的方法。這個(gè)工具就是:dive。
工具地址:https://github.com/wagoodman/dive,Star 數(shù):22k+。
這個(gè)工具可以清晰得看到鏡像每一層都包含哪些內(nèi)容,方便你分析是否有必要,如下圖所示。

特性
該工具的主要特性包括:
- 按層顯示 Docker 鏡像內(nèi)容;
- 指出每一層的變化;
- 評(píng)估 “鏡像的效率”;
- 快速的構(gòu)建/分析周期;
- 和 CI 集成;
- 支持多個(gè)鏡像和容器引擎:比如 docker、docker-archive 和 podman;
安裝和使用
1、主要采用docker運(yùn)行dive的方式,具體用法可查看官方:
https://github.com/wagoodman/dive
2、拉取dive鏡像
docker pull quay.io/wagoodman/dive:latest
3、通過docker運(yùn)行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> | 圖層視圖:查看當(dāng)前圖層修改 |
| <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視圖:向上滾動(dòng)頁面 |
| <kbd>PageDown</kbd> | Filetree視圖:向下滾動(dòng)頁面 |
以上就是本文的全部內(nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
Windows遠(yuǎn)程連接Docker服務(wù)的操作方法
本文介紹了在Windows系統(tǒng)下如何通過配置遠(yuǎn)程連接到Docker服務(wù)端,實(shí)現(xiàn)Docker客戶端遠(yuǎn)程訪問和管理Docker容器,本文給大家介紹的非常詳細(xì),感興趣的朋友一起看看吧2024-11-11
centos6使用docker部署kafka項(xiàng)目的方法分析
這篇文章主要介紹了centos6使用docker部署kafka項(xiàng)目的方法,結(jié)合實(shí)例形式分析了centos6環(huán)境下使用docker部署kafka項(xiàng)目的相關(guān)命令與使用技巧,需要的朋友可以參考下2020-02-02
Docker 拉取鏡像及標(biāo)簽操作 pull | tag
這篇文章主要介紹了Docker 拉取鏡像及標(biāo)簽操作 pull | tag,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。一起跟隨小編過來看看吧2020-11-11
關(guān)于CentOS 8.4離線安裝Docker包的問題
這篇文章主要介紹了CentOS 8.4離線安裝Docker,本文給大家介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2021-09-09
詳解在Docker容器中運(yùn)行Spring Boot應(yīng)用
本文將以一個(gè)最簡(jiǎn)單的Spring Boot開發(fā)的Web應(yīng)用為例,講解如何將其容器化運(yùn)行。本文的重點(diǎn)是構(gòu)建Docker鏡像、運(yùn)行Docker容器。2017-06-06

