docker dangling镜像

  

 

实验用的Dockerfile

docker dangling镜像

 

 

 

 

docker dangling镜像

 

 

将busybox:musl 修改 为busybox:stable

 

docker dangling镜像

 

 

构建

docker dangling镜像

 

 

拉取 正常的 busybox:stable镜像

 

docker dangling镜像

 

 

原来的busybox:stable tag被顶掉了

 

docker dangling镜像

 

 但此时其不为 dangling镜像,因为其被b.1引用了

 

再次对相同的Dockerfile构建

docker dangling镜像

 

 

产生dangling镜像 b.1 完全被新构建的 b.1 把 repository 和 tag 都顶掉了

docker dangling镜像

 

 显示其size 为 1.43MB, 但这包括了下层的 busybox:stable 其实 原来是busybox:musl

 

docker dangling镜像

 

 执行prune, 只清理出 8B空间,因为 b.txt 只有 8个字节, 这个是 真正的dangling层,被prune了

docker dangling镜像

 

 

再次执行 

docker dangling镜像

 

 

为什么第一次Docker没有认为这是一个dangling镜像? 

第一次截图

docker dangling镜像

 

 

本人认为,第一次的时候 image id 为 9ad2c435a887 的被引用了, docker的算法肯定是 被引用的镜像 不是dangling了

 

我们可以重新tag一下

docker dangling镜像

 

 

我们拉取镜像的时候,最好不要以sha256拉取

docker dangling镜像

 

 

docker dangling镜像

 

 

这样拉取的镜像没有tag, docker认为这个dangling镜像

 

上一篇:APT仓库目录和repository目录结构


下一篇:sudo apt-get update时W: GPG 错误:http://packages.osrfoundation.org/gazebo/ubuntu-stable xenial InReleas