Как получить имя контейнера из идентификатора контейнера с помощью модуля докера Python
Я хочу получить имя контейнера, передав идентификатор контейнера. Я попытался получить это ниже, но, к сожалению, у меня это не сработало.
import docker
def get_container_details(self,container=123456789992):
self.client = docker.from_env()
print(self.client.containers.get(container))
Могу ли я узнать, чего не хватает и как получить имя контейнера из идентификатора контейнера
2 ответа
Вы были всего в шаге от вас. Посмотрите на фрагмент ниже,
>>> import docker
>>> client = docker.from_env()
>>> client.containers.list()
[<Container: 1c9276a9ca>]
>>> client.containers.get('1c9276a9ca').name
u'unruffled_mahavira'
Метод списка контейнеров дает только идентификатор контейнера. Чтобы получить соответствующее имя, вы должны использовать атрибут имени, как показано ниже -
client = docker.from_env()
def get_all_container_list():
containers = client.containers.list()
for i in containers:
print(i.name, i)
Дополнительная информация в официальной документации