最近看了一些文章,得知docker在拉取一个镜像时,会先获取docker的manifest文件,在manifest文件中,包含了所需下载的(压缩的)层的sha256 以及对应config文件的sha256,这个config文件中又包含了(解压后)层的sha256(diffid),然后还会将压缩的层解压后计算sha256,再和diffid对比以保证没有下载错。我看一些文章说,docker通过diffid在本地查找是否已经存在相同的层。但是我在下载镜像后,无论是根据docker inspect比较,还是在本地中寻找文件名为diffid的文件夹,都并未找到相同sha256的层。
所以想知道docker究竟是如何知道该层已经下载的。
或者说docker inspect中所获得的层sha256和image config中记录的diffid是什么关系。
docker如何知道某个镜像层已经存在
- 写回答
- 好问题 0 提建议
- 追加酬金
- 关注问题
- 邀请回答
-
1条回答 默认 最新
悬赏问题
- ¥15 iOS 自定义输入法-第三方输入法
- ¥15 很想要一个很好的答案或提示
- ¥15 扫描项目中发现AndroidOS.Agent、Android/SmsThief.LI!tr
- ¥15 怀疑手机被监控,请问怎么解决和防止
- ¥15 Qt下使用tcp获取数据的详细操作
- ¥15 idea右下角设置编码是灰色的
- ¥15 全志H618ROM新增分区
- ¥15 在grasshopper里DrawViewportWires更改预览后,禁用电池仍然显示
- ¥15 NAO机器人的录音程序保存问题
- ¥15 C#读写EXCEL文件,不同编译