Docker中的sha256是什么意思,图片层的目录在哪里?

我是Docker的新手。 我必须从理论上对Docker提出质疑。 我们知道,默认情况下,Docker使用AUFS,图层文件系统。 我在哪里可以find每个图层的/var/libs/docker文件夹? 我想看看。

第二件事:
什么是sha256 ? 我知道这是一些数字散列。 但是在docker中意味着什么呢?

您可以在“ Docker和AUFS实践 ”中看到更多信息

https://docs.docker.com/engine/userguide/storagedriver/images/aufs_layers.jpg

此图显示每个图像层和容器层都在Docker主机文件系统中表示为/ var / lib / docker /下的目录。
联合安装点提供了所有图层的统一视图。

从Docker 1.10开始,映像层ID不对应于包含其数据的目录的名称。

正如我之前提到的 :

V2 API不处理图像ID。 相反,它使用摘要来标识图层,这可以作为图层的属性进行计算,并且是可独立validation的。

请参阅“ DockerregistryHTTP API V2 ”:

这个APIdevise受内容寻址能力的驱动。
这个devise的核心是内容可寻址标识符的概念。

它通过采用字节的抗碰撞散列来唯一标识内容。 这样的标识符可以通过select通用algorithm来独立地计算和validation。
如果能够以安全的方式传送这样的标识符,则可以从不安全的源中检索内容,独立地计算内容并确定获得了正确的内容。
简而言之,标识符是内容的一个属性。

为了消除其他概念的歧义,我们把这个标识符称为摘要
摘要是一个序列化的散列结果,由algorithm和hex部分组成。 该algorithm识别用于计算摘要的方法。 hex部分是散列的hex编码结果。

我们定义一个摘要string来匹配下面的语法:

  digest := algorithm ":" hex algorithm := /[A-Fa-f0-9_+.-]+/ hex := /[A-Fa-f0-9]+/ 

摘要的一些例子包括以下内容:

 digest description sha256:6c3c624b58dbbcd3c0dd82b4c53f04194d1247c6eebdaab7c610cf7d66709b3b Common sha256 based digest 

虽然algorithm确实可以实现各种各样的algorithm,但是兼容的实现应该使用sha256