您好,登錄后才能下訂單哦!
本篇內(nèi)容主要講解“怎么分析并探索Docker容器鏡像的內(nèi)容”,感興趣的朋友不妨來看看。本文介紹的方法操作簡(jiǎn)單快捷,實(shí)用性強(qiáng)。下面就讓小編來帶大家學(xué)習(xí)“怎么分析并探索Docker容器鏡像的內(nèi)容”吧!
或許你已經(jīng)了解到 Docker 容器鏡像是一個(gè)輕量、獨(dú)立、含有運(yùn)行某個(gè)應(yīng)用所需全部軟件的可執(zhí)行包,這也是為什么容器鏡像會(huì)經(jīng)常被開發(fā)者用于構(gòu)建和分發(fā)應(yīng)用。假如你很好奇一個(gè) Docker 鏡像里面包含了什么東西,那么這篇簡(jiǎn)要的指南或許會(huì)幫助到你。今天,我們將學(xué)會(huì)使用一個(gè)名為 Dive 的工具來分析和探索 Docker 鏡像每層的內(nèi)容。
通過分析 Docker 鏡像,我們可以發(fā)現(xiàn)在各個(gè)層之間可能重復(fù)的文件并通過移除它們來減小 Docker 鏡像的大小。Dive 工具不僅僅是一個(gè) Docker 鏡像分析工具,它還可以幫助我們來構(gòu)建鏡像。Dive 是一個(gè)用 Go 編程語言編寫的自由開源工具。
首先從該項(xiàng)目的 發(fā)布頁 下載***版本,然后像下面展示的那樣根據(jù)你所使用的發(fā)行版來安裝它。
假如你正在使用 Debian 或者 Ubuntu,那么可以運(yùn)行下面的命令來下載并安裝它。
$ wget https://github.com/wagoodman/dive/releases/download/v0.0.8/dive_0.0.8_linux_amd64.deb
$ sudo apt install ./dive_0.0.8_linux_amd64.deb
在 RHEL 或 CentOS 系統(tǒng)中
$ wget https://github.com/wagoodman/dive/releases/download/v0.0.8/dive_0.0.8_linux_amd64.rpm
$ sudo rpm -i dive_0.0.8_linux_amd64.rpm
Dive 也可以使用 Linuxbrew 包管理器來安裝。
$ brew tap wagoodman/dive
$ brew install dive
至于其他的安裝方法,請(qǐng)參考 Dive 項(xiàng)目的 GitHub 網(wǎng)頁。
要分析一個(gè) Docker 鏡像,只需要運(yùn)行加上 Docker 鏡像 ID 的 dive
命令就可以了。你可以使用 sudo docker images
來得到 Docker 鏡像的 ID。
$ sudo dive ea4c82dcd15a
上面命令中的 ea4c82dcd15a
是某個(gè)鏡像的 ID。
然后 dive
命令將快速地分析給定 Docker 鏡像的內(nèi)容并將它在終端中展示出來。
正如你在上面的截圖中看到的那樣,在終端的左邊一欄列出了給定 Docker 鏡像的各個(gè)層及其詳細(xì)內(nèi)容,浪費(fèi)的空間大小等信息。右邊一欄則給出了給定 Docker 鏡像每一層的內(nèi)容。你可以使用 Ctrl+空格
來在左右欄之間切換,使用 UP
/DOWN
光標(biāo)鍵來在目錄樹中進(jìn)行瀏覽。
下面是 dive
的快捷鍵列表:
Ctrl+空格
—— 在左右欄之間切換
空格
—— 展開或收起目錄樹
Ctrl+A
—— 文件樹視圖:展示或隱藏增加的文件
Ctrl+R
—— 文件樹視圖:展示或隱藏被移除的文件
Ctrl+M
—— 文件樹視圖:展示或隱藏被修改的文件
Ctrl+U
—— 文件樹視圖:展示或隱藏未修改的文件
Ctrl+L
—— 層視圖:展示當(dāng)前層的變化
Ctrl+A
—— 層視圖:展示總的變化
Ctrl+/
—— 篩選文件
Ctrl+C
—— 退出
在上面的例子中,我使用了 sudo
權(quán)限,這是因?yàn)槲业?Docker 鏡像存儲(chǔ)在 /var/lib/docker/
目錄中。假如你的鏡像保存在你的家目錄 ($HOME
)或者在其他不屬于 root
用戶的目錄,你就沒有必要使用 sudo
命令。
你還可以使用下面的單個(gè)命令來構(gòu)建一個(gè) Docker 鏡像并立刻分析該鏡像:
$ dive build -t <some-tag>
Dive 工具仍處于 beta 階段,所以可能會(huì)存在 bug。假如你遇到了 bug,請(qǐng)?jiān)谠擁?xiàng)目的 GitHub 主頁上進(jìn)行報(bào)告。
到此,相信大家對(duì)“怎么分析并探索Docker容器鏡像的內(nèi)容”有了更深的了解,不妨來實(shí)際操作一番吧!這里是億速云網(wǎng)站,更多相關(guān)內(nèi)容可以進(jìn)入相關(guān)頻道進(jìn)行查詢,關(guān)注我們,繼續(xù)學(xué)習(xí)!
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。