?
This document uses PHP Chinese website manual Release
列表圖像
docker images [OPTIONS] [REPOSITORY[:TAG]]
名字,簡寫 | 默認 | 描述 |
---|---|---|
--all, -a | false | 顯示所有圖像(默認隱藏中間圖像) |
--digests | false | 顯示摘要 |
--filter, -f | 根據提供的條件過濾輸出 | |
--format | 使用Go模板打印出漂亮的圖像 | |
--no-trunc | false | 不要截斷輸出 |
--quiet, -q | false | 只顯示數字ID |
Command | Description |
---|---|
docker | The base command for the Docker CLI. |
默認docker images
將顯示所有頂級圖像,它們的存儲庫和標簽,以及它們的大小。
Docker 映像具有中間層,docker build
通過允許緩存每個步驟來提高可重用性,減少磁盤使用并加快速度。這些中間層默認不顯示。
SIZE
是圖像及其所有父圖像占用的累積空間。這也是您docker save
在映像中創(chuàng)建的 Tar 文件內容所使用的磁盤空間。
如果圖像具有多個存儲庫名稱或標簽,則圖像將被多次列出。這張單張圖片(通過匹配識別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]]
參數,將列表限制為與參數匹配的圖像。如果您指定REPOSITORY
但不是TAG
,則該docker images
命令會列出給定存儲庫中的所有圖像。
例如,要列出“java”存儲庫中的所有圖像,請運行以下命令:
$ 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
,僅匹配庫和標簽圖像中列出。要在標簽為“8”的“java”存儲庫中查找所有本地圖像,可以使用:
$ docker images java:8REPOSITORY TAG IMAGE ID CREATED SIZE java 8 308e519aac60 6 days ago 824.5 MB
如果沒有匹配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
的內容可尋址標識符。只要用于生成圖像的輸入不變,摘要值就可以預測。要列出圖片摘要值,請使用以下--digests
標志:
$ docker images --digests REPOSITORY TAG DIGEST IMAGE ID CREATED SIZE localhost:5000/test/busybox <none> sha256:cbbf2f9a99b47fc460d422812b6a5adff7dfee951d8fa2e4a98caa0382cfbdbf 4986bf8c1536 9 weeks ago 2.43 MB
當推或拉到2.0注冊表時,push
或pull
命令輸出包含圖像摘要。您可以pull
使用摘要值。您也可以通過引用消化create
,run
和rmi
命令,還有FROM
在 Dockerfile 圖像參考。
過濾標志(-f
或--filter
)格式為“key = value”。如果有多個過濾器,則傳遞多個標志(例如--filter "foo=bar" --filter "bif=baz"
)
目前支持的過濾器是:
dangling(布爾 - true 或 false )
標簽(label=<key>
或label=<key>=<value>
)
before(<image-name>[:<tag>]
,<image id>
或<image@digest>
) -過濾圖像創(chuàng)建之前給定 id 或引用
因為(<image-name>[:<tag>]
,<image id>
或<image@digest>
) -給定 id 或引用創(chuàng)建的過濾器的圖像
參考(圖像參考的圖案) - 過濾參考與指定圖案匹配的圖像
$ 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
這將顯示未標記的圖像,即圖像樹的葉子(不是中間層)。這些圖像在圖像的新版本repo:tag
將圖像標識從圖像標識中移開時保留為<none>:<none>
或不標記。如果在容器正在使用時嘗試刪除圖像,則會發(fā)出警告。通過擁有這個標志,它可以批量清理。
你可以結合使用這個docker rmi ...
:
$ docker rmi $(docker images -f "dangling=true" -q)8abc22fbb042 48e5f45168b9 bf747efa0e2f 980fe10e5736 dea752e4e117 511136ea3c5a
注::Docker 發(fā)出警告,如果存在使用這些無標記圖像的容器。
label
過濾器匹配基礎上的存在的圖像label
單獨或label
和值。
以下過濾器將圖像與com.example.version
標簽進行匹配,而不管其值如何。
$ 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
標簽上帶有1.0
價值。
$ 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
值時,它返回一個空集,因為沒有找到匹配項。
$ docker images --filter "label=com.example.version=0.1"REPOSITORY TAG IMAGE ID CREATED SIZE
before
過濾器僅顯示在具有給定 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
過濾用before
會:
$ 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
過濾用since
會:
$ 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
過濾器僅顯示引用與指定模式匹配的圖像。
$ 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
過濾用reference
會:
$ 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
格式化選項(--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 |
當使用--format
選項時,image
命令將完全按照模板聲明輸出數據,或者在使用該table
指令時也會包含列標題。
以下示例使用不帶標題的模板,并輸出由冒號分隔的所有圖像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
要以表格格式列出存儲庫和標簽的所有圖像,可以使用:
$ 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