如何使用docker图像过滤器

 sotoloraboin_678 发布于 2023-01-04 12:38

我可以写

docker images --filter "dangling=true"

我可以使用哪些其他过滤器?

我可以用这样的东西吗?

docker images --filter "running=false"

study.. 66

Docker v1.13.0支持以下条件:

  -f, --filter value    Filter output based on conditions provided (default [])
                        - dangling=(true|false)
                        - label= or label==
                        - before=([:tag]||)
                        - since=([:tag]||)
                        - reference=(pattern of an image reference)

或者用于grep按某些值过滤图像:

$ docker images | grep somevalue

参考

docker图像过滤

docker docs

请更新您的答案 - 目前,截至2017年2月,它支持更多的参数. (5认同)

它不是完美的,但是使用上面的代码,您可以执行类似docker images -f“ reference = * / * / * latest”的操作-这将使您获得类似于“ k8s:30000 / github / someImage:latest”的信息。 。或`docker images -f“ reference = * / * latest”`会得到k8s:30000 / someImage:latest`。如果您想清理它们-`docker rmi $(docker images -f“ reference = * / * / * latest” -q --no-trunc)` (2认同)


Wilfred Hugh.. 29

您还可以使用REPOSITORY参数docker images来过滤图像.

例如,假设我们有图像:

$ docker images
REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
local-foo            latest       17864104b328     2 months ago    100 MB
example.com/bar      latest       b94c37de2801     9 months ago    285 MB
example.com/baz      latest       a004e3ac682c     2 years ago     221 MB

我们可以显式过滤具有给定名称的所有图像:

$ docker images example.com/bar
REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
example.com/bar      latest       b94c37de2801     9 months ago    285 MB

Docker还支持globbing:

$ docker images "example.com/*"
REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
example.com/bar      latest       b94c37de2801     9 months ago    285 MB
example.com/baz      latest       a004e3ac682c     2 years ago     221 MB

官方文档在这里.

4 个回答
  • 您还可以使用REPOSITORY参数docker images来过滤图像.

    例如,假设我们有图像:

    $ docker images
    REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
    local-foo            latest       17864104b328     2 months ago    100 MB
    example.com/bar      latest       b94c37de2801     9 months ago    285 MB
    example.com/baz      latest       a004e3ac682c     2 years ago     221 MB
    

    我们可以显式过滤具有给定名称的所有图像:

    $ docker images example.com/bar
    REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
    example.com/bar      latest       b94c37de2801     9 months ago    285 MB
    

    Docker还支持globbing:

    $ docker images "example.com/*"
    REPOSITORY           TAG          IMAGE ID         CREATED         SIZE
    example.com/bar      latest       b94c37de2801     9 months ago    285 MB
    example.com/baz      latest       a004e3ac682c     2 years ago     221 MB
    

    官方文档在这里.

    2023-01-04 12:40 回答
  • 为了我,

    docker images -q | while read IMAGE_ID; do
        docker inspect --format='{{.Created}}' --type=image ${IMAGE_ID}
    done
    

    做了伎俩.date命令可以通过相同的格式生成输出

    date -Ins --date='10 weeks ago'
    

    这允许我比较时间戳.不过,为了方便,我仍然使用滤镜来悬挂图像.

    2023-01-04 12:41 回答
  • Docker v1.13.0支持以下条件:

      -f, --filter value    Filter output based on conditions provided (default [])
                            - dangling=(true|false)
                            - label=<key> or label=<key>=<value>
                            - before=(<image-name>[:tag]|<image-id>|<image@digest>)
                            - since=(<image-name>[:tag]|<image-id>|<image@digest>)
                            - reference=(pattern of an image reference)
    

    或者用于grep按某些值过滤图像:

    $ docker images | grep somevalue
    

    参考

    docker图像过滤

    docker docs

    2023-01-04 12:41 回答
  • 在Docker v1.7中:

    目前支持的过滤器是:

    悬空(布尔 - truefalse)

    标签(label=<key>label=<key>=<value>)

    2023-01-04 12:41 回答
撰写答案
今天,你开发时遇到什么问题呢?
立即提问
热门标签
PHP1.CN | 中国最专业的PHP中文社区 | PNG素材下载 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有