?
本文檔使用 PHP中文網(wǎng)手冊(cè) 發(fā)布
列表圖像
docker images [OPTIONS] [REPOSITORY[:TAG]]
名字,簡(jiǎn)寫 | 默認(rèn) | 描述 |
---|---|---|
--all, -a | false | 顯示所有圖像(默認(rèn)隱藏中間圖像) |
--digests | false | 顯示摘要 |
--filter, -f | 根據(jù)提供的條件過(guò)濾輸出 | |
--format | 使用Go模板打印出漂亮的圖像 | |
--no-trunc | false | 不要截?cái)噍敵?/p> |
--quiet, -q | false | 只顯示數(shù)字ID |
Command | Description |
---|---|
docker | The base command for the Docker CLI. |
默認(rèn)docker images
將顯示所有頂級(jí)圖像,它們的存儲(chǔ)庫(kù)和標(biāo)簽,以及它們的大小。
Docker 映像具有中間層,docker build
通過(guò)允許緩存每個(gè)步驟來(lái)提高可重用性,減少磁盤使用并加快速度。這些中間層默認(rèn)不顯示。
SIZE
是圖像及其所有父圖像占用的累積空間。這也是您docker save
在映像中創(chuàng)建的 Tar 文件內(nèi)容所使用的磁盤空間。
如果圖像具有多個(gè)存儲(chǔ)庫(kù)名稱或標(biāo)簽,則圖像將被多次列出。這張單張圖片(通過(guò)匹配識(shí)別IMAGE ID
)SIZE
只用了一次。
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE<none> <none> 77af4d6b9913 19 hours ago 1.089 GB committ latest b6fa739cedf5 19 hours ago 1.089 GB<none> <none> 78a85c484f71 19 hours ago 1.089 GB docker latest 30557a29d5ab 20 hours ago 1.089 GB<none> <none> 5ed6274db6ce 24 hours ago 1.089 GB postgres 9 746b819f315e 4 days ago 213.4 MB postgres 9.3 746b819f315e 4 days ago 213.4 MB postgres 9.3.5 746b819f315e 4 days ago 213.4 MB postgres latest 746b819f315e 4 days ago 213.4 MB
docker images
命令采用可選[REPOSITORY[:TAG]]
參數(shù),將列表限制為與參數(shù)匹配的圖像。如果您指定REPOSITORY
但不是TAG
,則該docker images
命令會(huì)列出給定存儲(chǔ)庫(kù)中的所有圖像。
例如,要列出“java”存儲(chǔ)庫(kù)中的所有圖像,請(qǐng)運(yùn)行以下命令:
$ docker images java REPOSITORY TAG IMAGE ID CREATED SIZE java 8 308e519aac60 6 days ago 824.5 MB java 7 493d82594c15 3 months ago 656.3 MB java latest 2711b1d6f3aa 5 months ago 603.9 MB
[REPOSITORY[:TAG]]
值必須是“完全匹配”。這意味著,例如,docker images jav
與圖像不匹配java
。
如果提供REPOSITORY
和TAG
,僅匹配庫(kù)和標(biāo)簽圖像中列出。要在標(biāo)簽為“8”的“java”存儲(chǔ)庫(kù)中查找所有本地圖像,可以使用:
$ docker images java:8REPOSITORY TAG IMAGE ID CREATED SIZE java 8 308e519aac60 6 days ago 824.5 MB
如果沒(méi)有匹配REPOSITORY[:TAG]
,則列表為空。
$ docker images java:0REPOSITORY TAG IMAGE ID CREATED SIZE
$ docker images --no-trunc REPOSITORY TAG IMAGE ID CREATED SIZE<none> <none> sha256:77af4d6b9913e693e8d0b4b294fa62ade6054e6b2f1ffb617ac955dd63fb0182 19 hours ago 1.089 GB committest latest sha256:b6fa739cedf5ea12a620a439402b6004d057da800f91c7524b5086a5e4749c9f 19 hours ago 1.089 GB<none> <none> sha256:78a85c484f71509adeaace20e72e941f6bdd2b25b4c75da8693efd9f61a37921 19 hours ago 1.089 GB docker latest sha256:30557a29d5abc51e5f1d5b472e79b7e296f595abcf19fe6b9199dbbc809c6ff4 20 hours ago 1.089 GB<none> <none> sha256:0124422dd9f9cf7ef15c0617cda3931ee68346455441d66ab8bdc5b05e9fdce5 20 hours ago 1.089 GB<none> <none> sha256:18ad6fad340262ac2a636efd98a6d1f0ea775ae3d45240d3418466495a19a81b 22 hours ago 1.082 GB<none> <none> sha256:f9f1e26352f0a3ba6a0ff68167559f64f3e21ff7ada60366e2d44a04befd1d3a 23 hours ago 1.089 GB tryout latest sha256:2629d1fa0b81b222fca63371ca16cbf6a0772d07759ff80e8d1369b926940074 23 hours ago 131.5 MB<none> <none> sha256:5ed6274db6ceb2397844896966ea239290555e74ef307030ebb01ff91b1914df 24 hours ago 1.089 GB
使用 v2 或更高版本格式的圖像具有稱為digest
的內(nèi)容可尋址標(biāo)識(shí)符。只要用于生成圖像的輸入不變,摘要值就可以預(yù)測(cè)。要列出圖片摘要值,請(qǐng)使用以下--digests
標(biāo)志:
$ docker images --digests REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE localhost:5000/test/busybox <none> sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf 4986bf8c1536 9 weeks ago 2.43 MB
當(dāng)推或拉到2.0注冊(cè)表時(shí),push
或pull
命令輸出包含圖像摘要。您可以pull
使用摘要值。您也可以通過(guò)引用消化create
,run
和rmi
命令,還有FROM
在 Dockerfile 圖像參考。
過(guò)濾標(biāo)志(-f
或--filter
)格式為“key = value”。如果有多個(gè)過(guò)濾器,則傳遞多個(gè)標(biāo)志(例如--filter "foo=bar" --filter "bif=baz"
)
目前支持的過(guò)濾器是:
dangling(布爾 - true 或 false )
標(biāo)簽(label=<key>
或label=<key>=<value>
)
before(<image-name>[:<tag>]
,<image id>
或<image@digest>
) -過(guò)濾圖像創(chuàng)建之前給定 id 或引用
因?yàn)椋?code><image-name>[:<tag>],<image id>
或<image@digest>
) -給定 id 或引用創(chuàng)建的過(guò)濾器的圖像
參考(圖像參考的圖案) - 過(guò)濾參考與指定圖案匹配的圖像
$ docker images --filter "dangling=true"REPOSITORY TAG IMAGE ID CREATED SIZE<none> <none> 8abc22fbb042 4 weeks ago 0 B<none> <none> 48e5f45168b9 4 weeks ago 2.489 MB<none> <none> bf747efa0e2f 4 weeks ago 0 B<none> <none> 980fe10e5736 12 weeks ago 101.4 MB<none> <none> dea752e4e117 12 weeks ago 101.4 MB<none> <none> 511136ea3c5a 8 months ago 0 B
這將顯示未標(biāo)記的圖像,即圖像樹的葉子(不是中間層)。這些圖像在圖像的新版本repo:tag
將圖像標(biāo)識(shí)從圖像標(biāo)識(shí)中移開時(shí)保留為<none>:<none>
或不標(biāo)記。如果在容器正在使用時(shí)嘗試刪除圖像,則會(huì)發(fā)出警告。通過(guò)擁有這個(gè)標(biāo)志,它可以批量清理。
你可以結(jié)合使用這個(gè)docker rmi ...
:
$ docker rmi $(docker images -f "dangling=true" -q)8abc22fbb042 48e5f45168b9 bf747efa0e2f 980fe10e5736 dea752e4e117 511136ea3c5a
注::Docker 發(fā)出警告,如果存在使用這些無(wú)標(biāo)記圖像的容器。
label
過(guò)濾器匹配基礎(chǔ)上的存在的圖像label
單獨(dú)或label
和值。
以下過(guò)濾器將圖像與com.example.version
標(biāo)簽進(jìn)行匹配,而不管其值如何。
$ docker images --filter "label=com.example.version"REPOSITORY TAG IMAGE ID CREATED SIZE match-me-1 latest eeae25ada2aa About a minute ago 188.3 MB match-me-2 latest dea752e4e117 About a minute ago 188.3 MB
下面的篩選器將圖像與com.example.version
標(biāo)簽上帶有1.0
價(jià)值。
$ docker images --filter "label=com.example.version=1.0"REPOSITORY TAG IMAGE ID CREATED SIZE match-me latest 511136ea3c5a About a minute ago 188.3 MB
在本例中,使用0.1
值時(shí),它返回一個(gè)空集,因?yàn)闆](méi)有找到匹配項(xiàng)。
$ docker images --filter "label=com.example.version=0.1"REPOSITORY TAG IMAGE ID CREATED SIZE
before
過(guò)濾器僅顯示在具有給定 ID 或引用的圖像之前創(chuàng)建的圖像。例如,擁有這些圖像:
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE image1 latest eeae25ada2aa 4 minutes ago 188.3 MB image2 latest dea752e4e117 9 minutes ago 188.3 MB image3 latest 511136ea3c5a 25 minutes ago 188.3 MB
過(guò)濾用before
會(huì):
$ docker images --filter "before=image1"REPOSITORY TAG IMAGE ID CREATED SIZE image2 latest dea752e4e117 9 minutes ago 188.3 MB image3 latest 511136ea3c5a 25 minutes ago 188.3 MB
過(guò)濾用since
會(huì):
$ docker images --filter "since=image3"REPOSITORY TAG IMAGE ID CREATED SIZE image1 latest eeae25ada2aa 4 minutes ago 188.3 MB image2 latest dea752e4e117 9 minutes ago 188.3 MB
reference
過(guò)濾器僅顯示引用與指定模式匹配的圖像。
$ docker images REPOSITORY TAG IMAGE ID CREATED SIZE busybox latest e02e811dd08f 5 weeks ago 1.09 MB busybox uclibc e02e811dd08f 5 weeks ago 1.09 MB busybox musl 733eb3059dce 5 weeks ago 1.21 MB busybox glibc 21c16b6787c6 5 weeks ago 4.19 MB
過(guò)濾用reference
會(huì):
$ docker images --filter=reference='busy*:*libc'REPOSITORY TAG IMAGE ID CREATED SIZE busybox uclibc e02e811dd08f 5 weeks ago 1.09 MB busybox glibc 21c16b6787c6 5 weeks ago 4.19 MB
格式化選項(xiàng)(--format
)將使用 Go 模板打印容器輸出。
下面列出了 Go 模板的有效占位符:
Placeholder | Description |
---|---|
.ID | Image ID |
.Repository | Image repository |
.Tag | Image tag |
.Digest | Image digest |
.CreatedSince | Elapsed time since the image was created |
.CreatedAt | Time when the image was created |
.Size | Image disk size |
當(dāng)使用--format
選項(xiàng)時(shí),image
命令將完全按照模板聲明輸出數(shù)據(jù),或者在使用該table
指令時(shí)也會(huì)包含列標(biāo)題。
以下示例使用不帶標(biāo)題的模板,并輸出由冒號(hào)分隔的所有圖像ID
和Repository
條目:
$ docker images --format "{{.ID}}: {{.Repository}}"77af4d6b9913: <none>b6fa739cedf5: committ 78a85c484f71: <none>30557a29d5ab: docker 5ed6274db6ce: <none>746b819f315e: postgres 746b819f315e: postgres 746b819f315e: postgres 746b819f315e: postgres
要以表格格式列出存儲(chǔ)庫(kù)和標(biāo)簽的所有圖像,可以使用:
$ docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"IMAGE ID REPOSITORY TAG 77af4d6b9913 <none> <none>b6fa739cedf5 committ latest 78a85c484f71 <none> <none>30557a29d5ab docker latest 5ed6274db6ce <none> <none>746b819f315e postgres 9746b819f315e postgres 9.3746b819f315e postgres 9.3.5746b819f315e postgres latest