Как найти изображение докера для контейнера? - PullRequest
0 голосов
/ 05 апреля 2019

Я пытаюсь найти соответствующий образ докера для контейнера.

docker inspect <container-id> 

Это дает много информации. Это также дает изображение докера, если я делаю: Докер проверяет ['Config'] ['Image']

Но это не надежный источник, так как иногда он просто дает немного SHA, что-то вроде sha256:00954e990edd7c78dff64c8031c58c07cb36b4591dca3923b5a1a1c31199e54c

Есть ли надежный способ найти образ докера для контейнера?

Особенно через код Python.

У меня есть докер-клиент, но он не поддерживает запросы, которые могут дать мне имя изображения.

Ответы [ 2 ]

5 голосов
/ 05 апреля 2019

docker inspect <container-id> дает вам свойство Image, как вы заметили:

"Image": "sha256:8d6721e9290e96cc34faeee7a525311a400598e7fee170190c73ce103dd621ce"

Вы можете использовать это значение хэша для последующей проверки самого изображения: docker inspect <image-id>. В приведенном выше примере "8d6721e9290e96cc34faeee7a525311a400598e7fee170190c73ce103dd621ce" является идентификатором изображения.

0 голосов
/ 05 апреля 2019

хорошо, я только что проверил, что проверка образа докера также работает с хэшем sha .., поэтому я полагаю, что 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...