gpt4 book ai didi

Docker 镜像的 ID 和 sha256 是这个字段相关的以及如何生成的

转载 作者:行者123 更新时间:2023-12-01 15:16:06 25 4
gpt4 key购买 nike

如标题所述:

  • Docker的镜像ID和镜像sha256有关系吗? (如果我输入 docker images --no-trunc 我得到 sha256 作为图像 id)
  • 图片 ID 是如何计算的?是随机的吗?
  • sha256 是如何计算的?据我所知与图像的内容有关。我错了吗?

最佳答案

在 Docker 1.10 之前,图像 ID 是随机的,但从那时起,它们是使用哈希(当前为 SHA256)确定性地生成的。每个图像层都有一个摘要,它是其内容的哈希。图像 ID 是一个不同的摘要,从配置中散列 - 其中包括其层的摘要。

您可以在图像列表和历史记录中看到不同的摘要:

> docker images --digests                                                                                                                                   
REPOSITORY TAG DIGEST IMAGE ID CREATED
ubuntu latest sha256:28d4c5234db8d5a634d5e621c363d900f8f241240ee0a6a978784c978fe9c737 c73a085dc378 3 days ago

> docker history ubuntu
IMAGE CREATED CREATED BY SIZE COMMENT
c73a085dc378 3 days ago /bin/sh -c #(nop) CMD ["/bin/bash"] 0 B

在输出中,“图像 ID”实际上是叶子层的摘要,而图像本身具有不同的摘要。

Docker 将此称为内容可寻址 ID - 基本原理在 the Docker 1.10 release notes 中进行了解释,并且在 Nigel Brown 的博客文章 Explaining Docker Image IDs 中有一个非常详尽的演练。 .

关于Docker 镜像的 ID 和 sha256 是这个字段相关的以及如何生成的,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39794827/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com