当前位置: 首页 > 面试题库 >

如何检查本地是否存在带有特定标签的Docker映像?

司易安
2023-03-14
问题内容

我想找出本地是否存在带有特定标签的Docker映像。如果Docker客户端无法本地执行此操作,我可以使用bash脚本。

仅为了提供一些可能的bash脚本提示,运行docker images命令的结果将返回以下内容:

REPOSITORY                               TAG                 IMAGE ID            CREATED             VIRTUAL SIZE
rabbitmq                                 latest              e8e654c05c91        5 weeks ago         143.5 MB
busybox                                  latest              8c2e06607696        6 weeks ago         2.433 MB
rabbitmq                                 3.4.4               a4fbaad9f996        11 weeks ago        131.5 MB

问题答案:

我通常会测试的结果docker images -q(如以下脚本所示):

if [[ "$(docker images -q myimage:mytag 2> /dev/null)" == "" ]]; then
  # do something
fi

由于 docker images仅将其 REPOSITORY作为参数,因此您需要对tag进行grep,而不使用 -q

docker images
立即获取标签(docker 1.8+) [REPOSITORY[:TAG]]

下面提到的另一种方法是使用docker
inspect

但是,对于docker 17+,图像的语法为:( docker image inspect
在不存在的图像上,退出状态将为非0)

正如iTayb在评论中指出的:

  • docker images -q在具有大量图像的计算机上,该方法可能会变得很慢。在6,500张图像的计算机上运行需要44秒。
  • docker image inspect立即返回。


 类似资料:
  • 问题内容: 我尝试为Docker映像找到一个特定的标签。如何在命令行上执行此操作?我尽量避免全部下载并删除不需要的图像。 在正式的Ubuntu版本https://registry.hub.docker.com/_/ubuntu/中,有多个标签(针对该版本),而当我在命令行上搜索它时, 同样在命令行 https://docs.docker.com/engine/reference/commandli

  • 问题内容: 我有以下html(用标记的换行符): 如何查找 我 要查找的 文本 ?下面的代码返回第一个发现的值,因此我需要以某种方式按 固定文本 进行过滤。 更新 。如果我使用以下代码: 然后它只返回 固定文本: 。 问题答案: 您可以将正则表达式传递给的text参数,如下所示:

  • 问题内容: docker inspect命令对于在Docker映像上获取标签非常有用: 对于简单的标签名称,inspect命令有一个不错的选项(使用Go模板)。 但是,如何访问名称中带有点的标签? 我正在用bash脚本编写此文件,如果可能的话,我希望避免在其中重新解析JSON输出。 问题答案: 该功能是我想要的。它可以在映射中查找任意字符串。

  • 问题内容: docker inspect命令对于在Docker映像上获取标签非常有用: 对于简单的标签名称,inspect命令有一个不错的选项(使用Go模板)。 但是,如何访问名称中带有点的标签? 我正在bash脚本中编写此代码,如果可能的话,我希望避免在其中重新解析JSON输出。 问题答案: 该功能是我想要的。它可以在映射中查找任意字符串。

  • 问题内容: 我想检测特定页面是否已在内存中映射。目的是能够在使用固定内存地址调用mmap之前执行此检查。以下代码说明了默认情况下的情况:mmap默默地重新映射原始内存页面。 我知道我可以打开并解析/ proc / self / maps来确定已分配的内存范围,并从中推断出以下内容:如果我可以使用mmap安全地请求特定的内存范围,但是我正在寻找合适的API:一个东西 ? 问题答案: msync(ad

  • 如何检查名称为“session”的表是否存在?我如何知道我的查询是否有效? 编辑:这不是上述问题的重复,因为我的问题与Node.js javascript代码有关。不是SQL!我只想知道在res对象中查找什么,因为它似乎是未定义的...