【问题标题】:Is there a way to obtain the date when the docker image was created using docker API for python有没有办法获取使用 docker API for python 创建 docker 映像的日期
【发布时间】:2020-09-10 16:36:38
【问题描述】:

我想使用 docker API 获取 docker 映像的 created at 日期。这可能吗? 我在文档https://docker-py.readthedocs.io/en/stable/images.html 中没有看到它。 我看到了一种使用requests 获取它的方法,但希望使用docker API,因为我的代码使用 docker API 来获取其他信息,例如注册表 ID。

import docker
cli=docker.from_env()
cl_image = cli.images.get_registry_data(reg_url, auth_config=None)
image_hash = cl_image.id

【问题讨论】:

  • 是的。我不确定如何使用它。

标签: python docker docker-api python-docker


【解决方案1】:

不,Docker SDK for python 不支持获取创建日期。 create 属性根本不存在,因此您将无法获得该值。所以你必须使用request 模块从Docker API 获取数据。

注意:您的导入库不应称为API,它只是一个支持Docker 引擎API 的库。真正的APIhere,您将使用它来发出GET 请求。

编辑:

我不确定您的身份验证是否正确。您需要提供带有值的凭证并在 base64url (JSON) 中进行编码,并在请求调用中将它们作为 X_Registry-Auth 标头传递,请参阅 this。这个example 完美地说明了你必须做什么,尽管它显示在cURL POST 请求的上下文中。

【讨论】:

  • 谢谢。我不确定如何实现它,尝试一下。如果您可以与任何公共 docker 映像共享一个 sn-p,那将很有帮助。
  • @py_noob 我已经更新了 URL,它指向了您需要采取的正确步骤。使用所需参数配置您的调用,它应该为您提供文档中显示的响应
  • 非常感谢!非常感激。但是,对于我提供的每个 url,我都会得到一个 ,因此我试图对其进行调试。这是代码 sn-p:rfinal=requests.get('https://gitlab-registry.nameofprogram.com/abc/source_repo/', headers={"PRIVATE_TOKEN": <enter_token_here>})
猜你喜欢
  • 2022-01-18
  • 2021-10-25
  • 1970-01-01
  • 1970-01-01
  • 2021-08-22
  • 2018-10-01
  • 2020-05-19
  • 2020-04-30
  • 1970-01-01
相关资源
最近更新 更多