比较dockerregistry图像
最近在全球docker登记处的centos图像被更新了(大概4天前)。 在更新之前,我可以成功构build出Centos 6映像,但现在我对某些软件包有一些安装错误。 当我查看来自前后的图像,然后尝试跟踪版本历史时,它看起来像是
f1b10cd84249 --> b9aeeaeb5e17 (originally worked) \-> fb9cc58bde0c --> a005304e4e74 (current version where my code breaks)
箭头显示图像的更新方式(左边最旧,右边最新)。 我很好奇图像是如何不同的。 反正有没有做a005304e4e74
和b9aeeaeb5e17
图像的diff
?
我从来没有尝试过,但我想你可以这样做:
$ docker export -o f1.tar b9aeeaeb5e17 $ docker export -o f2.tar a005304e4e74 $ diff <(tar -tvf f1.tar | sort) <(tar -tvf f2.tar | sort)
导出将创build文件系统的tar,然后我们使用它来获取文件差异的差异。 (我从liunx中的两个.tar.gz文件列表中得到Diff的差异语法)
您可能会发现只是在图像上运行docker history
,可以为您提供足够的信息。