docker pull 失败会自动清除已下载的资源吗

2019-03-18 14:01:12 +08:00
 ClancyH
问题同主题,docker 是 ubuntu 上的 docker.io ,主要是最近弄一个 kurento 的 docker 但是公司网不行老是下载超时或者卡住不动,并且每次下载都是从头开始下,所以 docker 会不会自动清除下载的缓存呢
5016 次点击
所在节点    Docker
1 条回复
kingfsen
2019-03-30 10:31:32 +08:00
docker 镜像是分层的,每一层的内容都是通过一个摘要算法,类似 md5sum 这样的生成了一个摘要叫 digest。
docker 服务端也就是 docker registry 与你本地的 docker client 默认使用的是同一个算法,只要你不去修改它。所以你每次下载失败,但是如果有部分层下载成功,它就会在本地,因为你拉取镜像的时候,首先拉取的是镜像的 manifest,manifest 上记录的是当前镜像有哪些层 digest 组成的,只要检查本地 docker registry 中有对应的层,那么它不会去下载这一层,在执行 docker Pull 的时候一般会显示 layer exist,已下载的 Layer 是不会清除的。https://youendless.com/post/harbor_image_scan/

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/545762

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX