小白求问:invalid diffID for layer
docker吧
全部回复
仅看楼主
level 2
大佬们,请教一个问题,有一个.tar文件,其他同事用docker save打包的docker镜像,使用的时候都用docker load -i 文件地址来加载,但是加载中遇到以下报错:invalid diffID for layer....
查询资料可能有以下原因:
1. docker环境不一致,打包和解包要求环境一致
2. 文件传输或者其他过程中存在对文件内容的修改或者文件内容丢失
3. 打包文件的时候修改过文件
尝试过以下方案:
1. 其他电脑虚拟机测试
2. 用xftp/共享文件夹/压缩后再上传文件(保证传输前后文件sha256值一致)
3. docker版本更换:13/17/18/19/20/24 (源文件是在Centos7、docker19下生成)
4. 解压文件夹后对每一层出现问题的文件的layer.tar修改diffID最后合并(问题裂化,无限出现invalid diffID问题)
仍未解决,希望有思路的大佬指导一下
2023年06月08日 03点06分 1
level 2
[泪]
2023年06月08日 05点06分 2
[黑线]
2023年06月08日 07点06分
2023年06月09日 08点06分
level 1
楼主解决了吗?要怎么搞呢
2024年04月18日 15点04分 3
level 5
有一种方法是,创建自己的 registry,然后 push 你需要迁移的景象。在需要恢复的机器上来 pull 这个image。如果你不在乎隐私数据,可以直接 publish 到公开的 dockerhub。
2024年04月18日 15点04分 4
level 5
2024年04月18日 15点04分 5
level 5
原因是因为一些外在原因改变了镜像的数据,导致导入镜像的时候文件校验不正确了,建议拷贝的时候打成压缩包再传输
参考:https://www.cnblogs.com/whaleX/p/16644361.html
==============================
另一篇文章:
之前有遇到过一个问题就是自己更改了导出后的镜像中的文件导致无法导入到Docker,自己有更改过其中的镜像文件,重新打包后导致hash值不一致。
参考:https://www.louislivi.com/archives/docker-dao-ru-jing-xiang-bao-cuo-invaliddiffidforlayerxxxexpectedsha256xxxgotsha256xxx-wen-jian-bei-geng-gai-guo-
2024年04月18日 15点04分 6
1