比较dockerregistry图像

最近在全球docker登记处的centos图像被更新了(大概4天前)。 在更新之前,我可以成功构build出Centos 6映像,但现在我对某些软件包有一些安装错误。 当我查看来自前后的图像,然后尝试跟踪版本历史时,它看起来像是

f1b10cd84249 --> b9aeeaeb5e17 (originally worked) \-> fb9cc58bde0c --> a005304e4e74 (current version where my code breaks) 

箭头显示图像的更新方式(左边最旧,右边最新)。 我很好奇图像是如何不同的。 反正有没有做a005304e4e74b9aeeaeb5e17图像的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 ,可以为您提供足够的信息。