docker load tar.gz包失败解决方法

执行docker load -i xxx.tar.gz时候报错

open /var/lib/docker/xxx No such file or directory

这种情况属于容器快照文件缺乏基础镜像导致的

因为docker使用了联名文件系统,即在基础镜像上覆盖一层可写层来执行其他操作。

而容器快照文件只包含了上层操作,没有底层的基础镜像。这也是docker save保存的镜像压缩包和docker export保存的容器快照压缩包的区别。

实际应用的时候因为很多镜像都使用了同一个基础镜像,所以使用容器快照的话更节省资源,不需要每个镜像都加载基础镜像。

解决方案很简单

一般容器快照文件都会包含minifest文件,找到minifest文件。里面会告诉你需要的基础镜像

docker load加载基础镜像之后docker load重新加载该压缩包即可解决问题。

posted @ 2019-09-02 21:21 菲菲菲菲菲常新的新手 阅读(...) 评论(...) 编辑 收藏