如何找到容器的Docker镜像?

时间:2019-04-05 20:04:14

标签: python docker containers

我正在尝试为容器找到相应的docker映像。

docker inspect <container-id> 

这提供了很多信息。如果我这样做,它还会提供docker映像:     码头工人检查['Config'] ['Image']

但这不是可靠的来源,因为有时它仅提供一些SHA,例如sha256:00954e990edd7c78dff64c8031c58c07cb36b4591dca3923b5a1a1c31199e54c

是否有找到容器的docker映像的可靠方法?

特别是通过Python代码。

我有docker客户端,但是不支持任何可以给我图像名称的查询。

2 个答案:

答案 0 :(得分:5)

您已经注意到,

docker inspect <container-id>为您提供了Image属性:

"Image": "sha256:8d6721e9290e96cc34faeee7a525311a400598e7fee170190c73ce103dd621ce"

您可以使用该哈希值来随后检查图像本身:docker inspect <image-id>。在上面的示例中,“ 8d6721e9290e96cc34faeee7a525311a400598e7fee170190c73ce103dd621ce”是图像ID。

答案 1 :(得分:0)

好吧,我jsut检查了docker image inspect也可以与sha .. hash一起使用,所以我认为sdk(可能只是将其传递给cmd)也应该能够像本示例一样处理

>>> client.containers.list()
[<Container '45e6d2de7c54'>, <Container 'db18e4f20eaa'>, ...]

>>> container = client.containers.get('45e6d2de7c54')

>>> container.attrs['Config']['Image']
"bfirsh/reticulate-splines"

>>> container.logs()
"Reticulating spline 1...\n"

>>> container.stop()