对docker拉取镜像的一个知识点弥补不足

docker拉取镜像时,如果本地已经存在指定标签的镜像,那么此时docker便不会继续进行拉取。之前看到这句话所理解的含义是在docker pull tag拉取镜像时,拿tag与本地已有的镜像标签做比较来着,不过今天发现实时上并非如此。并不是拿tag做对比的,而是使用sha256校验算法对本地的符合tag的镜像做校验码计算并与远端的docker hub仓库符合tag的镜像做比较,如果是一致的,说明本地有了,就不会进行拉取。如果tag是一样的,但是校验码不一样,说明镜像不是一个镜像,那么依然会进行镜像的拉取。

[root@master k8s]# docker pull nginx
Using default tag: latest
latest: Pulling from library/nginx
Digest: sha256:8f335768880da6baf72b70c701002b45f4932acae8d574dedfddaf967fc3ac90
Status: Image is up to date for nginx:latest
docker.io/library/nginx:latest

之前没有深入去研究Digest的作用,今天才知道他的实际使用的含义是什么。

但是
docker run启动一个容器的时候,还是以tag为准的,这点要搞清除,可以把docker pull理解成一个镜像的更新

原文地址:https://www.cnblogs.com/FengGeBlog/p/15076800.html