file integrity checksum failed

2018-04-21  本文已影响0人  码代码的陈同学

文章来源:陈同学 | file integrity checksum failed

本文记录上周Docker遇到的一个问题

问题背景

Jenkins自动构建镜像之后,向私有registry推送镜像时,出现了如下错误,且镜像push失败

file integrity checksum failed for "etc/ssl/certs/java/cacerts”

排查过程

因仅熟练使用Docker命令,对于其原理并未过多学习,因此排查问题过程比较笨,以下记录排查步骤:

通过各步骤可以判断是基础镜像出了问题,联想到前一周暴力删除过/var/lib/docker/overlay目录中两年前的文件夹,因此问题原因已明确:
因为删除了基础镜像的某层对应的文件夹,导致镜像的checksum对不上,此时镜像已不完整,因此push失败

为什么删除/var/lib/docker/overlay下的数据?
/overlay目录已经有约150G, 很多早期产生的垃圾镜像以无法通过docker rmi -f强行清理,因此对开发环境的registry进行了尝试性的暴力清理,由此产生的问题也让我们学习了docker的OverlayFS

解决方式

上一篇下一篇

猜你喜欢

热点阅读