最近全球码头注册表中的centos图像已更新(约4天前似乎)。在更新之前,我可以成功构建Centos 6映像,但现在我对某些软件包有一些安装错误。当我查看之前和之后的图像,然后尝试跟踪版本历史时,它看起来像
f1b10cd84249 --> b9aeeaeb5e17 (originally worked)
\-> fb9cc58bde0c --> a005304e4e74 (current version where my code breaks)
其中箭头显示图像的更新方式(左边是最旧的,右边是最新的)。我很好奇图像是如何不同的。反正有diff
和a005304e4e74
张b9aeeaeb5e17
吗?
答案 0 :(得分:1)
我从未尝试过,但我想你可以做到:
$ docker export -o f1.tar b9aeeaeb5e17
$ docker export -o f2.tar a005304e4e74
$ diff <(tar -tvf f1.tar | sort) <(tar -tvf f2.tar | sort)
导出将创建文件系统的tar,然后我们使用它来获取文件差异的差异。 (我从Diff between two .tar.gz file lists in liunx)获得了diff语法
您可能会发现只是在图片上运行docker history
会为您提供足够的信息。