如何查看所有 docker 个图片标签?

How can I see all docker Image tags?

我是 docker 的新手,我开始尝试它。

我下载了最新的mongodocker图片:docker pull mongo 然后我查看我下载的图像 (docker images),但关于 mongo 版本的唯一信息是标签,它只是 'latest'

发现可以用docker inspect命令判断版本,确实有用,但也很不方便。

因为我读到每个图像可以有多个标签,所以我假设我下载的 mongo 图像有另一个带有版本号的标签。

如何查看已下载图片的所有标签?

为了查看一张图像的所有可用标签,您需要检查存储图像的注册表。在您的情况下,您使用的是默认的 public 注册表,您可以找到 here

你可以找到所有的mongo标签,直接here
description 选项卡中,您还会看到,目前 latest 标签也与版本 4.0 关联。 10、4.04.

此外,为了得到一个特定的标签,你需要使用这个命令:

docker image pull image:tag

例如,如果你想拉取 mongo 的 4.0.10 版本,那么你需要输入:

docker image pull mongo:4.0.10

可以使用注册表api来做,参考this & this

对于你的情况,你可以使用下一个命令:

wget -q https://registry.hub.docker.com/v1/repositories/mongo/tags -O -  | sed -e 's/[][]//g' -e 's/"//g' -e 's/ //g' | tr '}' '\n'  | awk -F: '{print }'

如果需要其他图片的标签,请将mongo改为其他。

您刚刚下载了一个标签。在你的情况下 latest 这是另一个标签的别名,大多数时候但并不总是最高版本号。在本例中,4, 4.04.0.10 都是相同的图像。但是 unstable 发布了一个更新的图像 4.1

您可以找到 mongo 个标签 here。检查图像的 dockerhub 描述总是一个好主意,在那里你会找到很多信息。