最近发现一种很奇葩的情况:
A机push镜像a(版本:0.0.0,hash值:a)到harbor
A机修改了a的容器并commit了镜像b(版本:0.0.0,hash值:b)
A机push镜像b上harbor
A机 save镜像a成tar包并通过USB直接传给B机
B机load tar包得到镜像a(版本号:0.0.0,hash值:a)
B机pull harbor上版本号为0.0.0的镜像
发现B机全部层重拉
B机pull harbor上hash为a的镜像,不用重拉
但是,dockerHub完全没有以上问题,区别就在于,dockerHub和harbor的存储结构不一样,harbor有一个镜像层标识,docker save会抹除这个标识,导致无法识别