使用命令docker image
,您可以列出主机上的所有图像:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
scdockerdemo_php latest 155d80ea7642 4 minutes ago 265.3 MB
scdockerdemo_node latest 6189bc65c3fe 8 minutes ago 861.4 MB
php 5.6-apache fc50bce69ea0 3 days ago 481.3 MB
node 4.1 fc81e574af43 3 days ago 641.1 MB
使用docker image -f "tag=latest"
,您可以过滤具有特定标记的图像。
如何过滤存储库名称?例如。 docker image -f "repository=scdockerdemo_*"
此命令始终返回无效过滤器'存储库'
答案 0 :(得分:45)
如果要按存储库名称(例如:testImage)进行过滤,请使用以下命令:
docker images testImage
如果您有多个具有相同存储库名称但不同标记的图像,则可以使用':'
(例如,testImage:<whatever tag>
)
答案 1 :(得分:12)
您可以按reference(name
和tag
的组合)过滤图片:
docker image ls --filter 'reference=scdockerdemo_*'
答案 2 :(得分:12)
根据https://docs.docker.com/engine/reference/commandline/images/的文档,您可以通过用双引号括起来来匹配通配符:
docker images "scdockerdemo_*"
**特别字符** 如果您在存储库名称中有特殊字符(如“/”),则应将其转义为按存储库名称进行过滤。
ex)
> docker images "zirho6\/*"
REPOSITORY TAG IMAGE ID CREATED SIZE
zirho6/aaaa latest 946bf5cc28fc 2 days ago 997MB
zirho6/bbbb latest 741a6e368d07 10 days ago 866MB
zirho6/ccc latest 173b36570522 12 days ago 853MB
zirho6/dddd latest e08e5c202e9b 13 days ago 853MB
答案 3 :(得分:9)
根据this answer to a similar question,过滤器选项目前仅支持&#34; dangling = true&#34;。
如果您正在使用Bash,最简单的方法可能是:
$ docker images | grep scdockerdemo
或者,您可以尝试使用awk匹配第一列中的字符串:
$ docker images | awk '$1 ~ /scdockerdemo/ { print }'
答案 4 :(得分:0)
提供其他选择供参考
docker图像| ruby -ne'如果$ _ =〜/ harbor /'