什么是Docker标记(寻找定义)?

时间:2016-07-21 13:47:08

标签: docker tags

我正在寻找" Docker标记"的定义。

我阅读了docs及相关的SO帖子,但无法找到任何内容。

感谢您的帮助。

1 个答案:

答案 0 :(得分:7)

基本上可以使用元数据来区分Docker镜像的版本,这样就可以保留旧版本的旧版本或变体。

如果您一直在使用Docker,则可以通过docker images命令查看图像及其标签列表。如果您没有为本地图像指定标记,则默认值为latest

正如您在文档中看到的,要创建新标记,格式为:

docker tag IMAGE[:TAG] IMAGE[:TAG]

更新:摘要值

在图像存储库中,图像本身具有一个ID,该ID可以由称为摘要的唯一标识符引用,该标识符是sha256哈希值,基于组成图像的图层。 (拉动图像时可能已经看到过这个值。)同一个图像可以有多个标签 - 标签只是指针,因此创建多个标签不会占用额外的存储空间。

请注意,使用静态命名标记(例如 latest )是一种反模式,因为您无法100%确定哪种图像适合给定用途。虽然标记一次只能应用于给定图像存储库中的一个图像,但它可能不是您的应用程序正在使用的图像。您的构建系统负责更新标记,并且您的Docker客户端负责何时检查更新的图像,因此明确检查digest值始终是个好主意:

  

使用v2或更高版本格式的图像具有内容可寻址   标识符称为摘要。只要输入用于生成   图像不变,摘要值是可预测的。要列出图像摘要值,请使用--digests标志:

docker images --digests