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

时间:2017-03-08 19:16:18

标签: docker

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

第二件事:
什么是sha256?我知道这是一些数字哈希。但它在码头工具中意味着什么?

1 个答案:

答案 0 :(得分:0)

您可以在“Docker and AUFS in practice

中查看更多内容

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

  

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

     

截至Docker 1.10,图像图层ID与包含其数据的目录名称不对应。

作为I mentioned before

  

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

请参阅“Docker Registry HTTP API V2”:

  

此API设计受内容可寻址性的严重影响   该设计的核心是内容可寻址标识符的概念。

     

它通过采用字节的抗冲突散列来唯一地标识内容。可以通过选择通用算法来独立地计算和验证这种标识符   如果可以以安全的方式传达这样的标识符,则可以从不安全的源检索内容,独立计算并确保获得正确的内容。
  简而言之,标识符是内容的属性。

     

为了消除其他概念的歧义,我们将此标识称为摘要   摘要是序列化的哈希结果,由算法和十六进制部分组成。该算法识别用于计算摘要的方法。十六进制部分是散列的十六进制编码结果。

     

我们定义一个摘要字符串以匹配以下语法:

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

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

digest  description
sha256:6c3c624b58dbbcd3c0dd82b4c53f04194d1247c6eebdaab7c610cf7d66709b3b     Common sha256 based digest
  

虽然该算法允许实现各种算法,但是兼容的实现应该使用sha256