从registry获取最新的Docker镜像创builddate

如何获取registry中存在的Docker镜像的最新创builddate? 最近,我们遇到了一个问题,即Docker镜像不能自动在我们的某些集群从属服务器上执行,而且项目在非常过时的容器环境中运行。 所以我期望每天运行一次cron脚本来检查拖动的Docker镜像是否比registryDocker镜像早24小时。

我所知道的最简单的方法是编写一个简单的脚本,使用Docker Registry REST API并根据需要对结果进行基本操作。

以下是Python 3中的一些示例代码,可以为我使用的回购代码执行此操作:

import requests repo_tag_url = 'https://hub.docker.com/v2/repositories/streamsets/datacollector/tags' results = requests.get(repo_tag_url).json()['results'] for repo in results: print(repo['name'], repo['last_updated']) 

就我的例子而言,它返回:

 3.0.0.0-SNAPSHOT 2017-10-23T14:43:29.888877Z latest 2017-10-05T23:05:03.636155Z 2.7.2.0 2017-10-05T22:50:53.269831Z 2.7.2.0-RC5 2017-10-05T19:34:19.523402Z 2.7.2.0-RC4 2017-10-05T02:05:52.522323Z 2.7.2.0-RC3 2017-10-04T00:08:02.929502Z 2.8.0.0-SNAPSHOT 2017-10-03T21:55:08.042479Z 2.7.2.0-RC2 2017-10-03T19:20:56.642686Z 2.7.2.0-RC21 2017-09-30T21:42:27.924190Z 2.7.2.0-RC1 2017-09-30T17:34:14.409320Z 

像Docker的历史 ?

从文档:

说明:显示图像的历史logging

用法:docker历史[选项]图像

例如:

  $ docker history imageName 

并使用–format选项:

 $ docker images --format "{{.ID}}: {{.Created}} ago" cc1b61406712: 2 weeks ago <missing>: 2 weeks ago <missing>: 2 weeks ago <missing>: 2 weeks ago <missing>: 2 weeks ago <missing>: 3 weeks ago <missing>: 3 weeks ago <missing>: 3 weeks ago