docker加载:检查是否为最新
我的应用程序运行在Docker容器中,我使用离线部署docker加载:检查是否为最新,docker,docker-image,docker-daemon,Docker,Docker Image,Docker Daemon,我的应用程序运行在Docker容器中,我使用离线部署 docker将图像保存到我的开发机器上,并将其与应用程序捆绑在一起 通过U盘手动传输文件包和我的应用程序 docker加载在目标机器上加载(目标未连接到网络) 步骤1和3由BASH脚本(Linux)执行 应用程序更新通常不需要更新Docker映像,而且由于Docker save和Docker load都非常缓慢且占用大量资源,因此我希望尽可能避免这些步骤 有没有办法确定我的Docker守护进程上的tar图像是否等于imageimage:TAG
docker将图像保存到我的开发机器上,并将其与应用程序捆绑在一起
docker加载
在目标机器上加载(目标未连接到网络)Docker save
和Docker load
都非常缓慢且占用大量资源,因此我希望尽可能避免这些步骤
有没有办法确定我的Docker守护进程上的tar
图像是否等于imageimage:TAG
我尝试了
skopeo-inspect-docker-archive:…
vs.docker-image-inspect…
output进行比较,但似乎没有要比较的图像ID。我已经看到RootFS层是相等的,但这是一个强有力的保证,我可以跳过docker save
/docker load
?直到现在,docker还不支持该功能,但我使用bash解决了类似的问题,以“破解它”
我所做的:
docker目前还不支持该功能,但我用bash解决了一个类似的问题 我所做的:
谢谢分享您的方法,但我相信我们在这里有一个误解。我并没有试图从
tar
文件中提取IMAGE:TAG
信息,因为这些仅仅是“指针”,不同的图像可以在不同的时间/不同的机器上进行相同的标记。我需要知道图像内容是否真实相同,因此我可以跳过docker save
(开发人员机器)和/或docker load
(目标机器)。Hi@FelixL。那么你想比较图像吗?是的,我希望能够通过sha256:。。实际上是校验和的散列,而不是比较层内容。正如我在Q中提到的,我已经观察到RootFS层是相同的,所以这已经是事实了。只是不确定这是否足以比较得出平等的结论。当然,一个图像是由它的所有层组成的,但可能还有我不知道的其他数据。我希望能找到一个类似于总校验和的东西,我可以从中得出相等的结论。为什么不比较一下“创建日期”???新的赢家:)谢谢分享你的方法,但我相信我们在这里有一个误解。我并没有试图从tar
文件中提取IMAGE:TAG
信息,因为这些仅仅是“指针”,不同的图像可以在不同的时间/不同的机器上进行相同的标记。我需要知道图像内容是否真实相同,因此我可以跳过docker save
(开发人员机器)和/或docker load
(目标机器)。Hi@FelixL。那么你想比较图像吗?是的,我希望能够通过sha256:。。实际上是校验和的散列,而不是比较层内容。正如我在Q中提到的,我已经观察到RootFS层是相同的,所以这已经是事实了。只是不确定这是否足以比较得出平等的结论。当然,一个图像是由它的所有层组成的,但可能还有我不知道的其他数据。我希望能找到一个类似于总校验和的东西,我可以从中得出相等的结论。为什么不比较一下“创建日期”???较新的获奖者:)