Docker PS - показать имя изображения вместо имени

Я отображаю запущенные контейнеры, используяdocker ps команда. Существует столбец ИЗОБРАЖЕНИЕ, в котором отображается имя изображения, из которого был создан каждый контейнер. Однако за это время (пока работали контейнеры) я перестроил некоторые изображения. Новые изображения имеют одинаковые имена, но разные идентификаторы. Теперь я хотел бы проверить, из какого изображения был запущен конкретный контейнер. Я не могу вывести эту информацию, используя только имя изображения. Мне нужен идентификатор изображения. Есть ли возможность отобразить идентификатор изображения, которое использовалось для запуска конкретного контейнера?

3 ответа

Решение

Вы можете передать несколько идентификаторов контейнеров команде docker inspect, а затем использовать --format, чтобы получить только те значения, которые вам нужны.

sudo docker inspect --format='{{.Id}} {{.Name}} {{.Image}}' $(sudo docker ps -aq)

Это даст вам список идентификаторов Docker-контейнеров, имен и идентификаторов изображений, которые используются для всех ваших контейнеров.

asdf1234 /mydockercontainer sha256:abcd1234

https://docs.docker.com/engine/reference/commandline/inspect/

Я нашел это docker inspect <container-id> может быть использован для этой цели. Он отображает поле изображения, содержащее полный хэш.

docker images

покажет вам имена изображений и их идентификаторы

Другие вопросы по тегам