Фильтровать изображения докера по имени репозитория
Используя команду docker images
, вы можете получить список всех изображений на вашем хосте:
REPOSITORY TAG IMAGE ID CREATED VIRTUAL SIZE
scdockerdemo_php latest 155d80ea7642 4 minutes ago 265.3 MB
scdockerdemo_node latest 6189bc65c3fe 8 minutes ago 861.4 MB
php 5.6-apache fc50bce69ea0 3 days ago 481.3 MB
node 4.1 fc81e574af43 3 days ago 641.1 MB
С помощью docker images -f "tag=latest"
вы можете фильтровать изображения с определенным тегом.
Как я могу отфильтровать имя репозитория? Например. docker images -f "repository=scdockerdemo_*"
Эта команда всегда возвращает недопустимый фильтр "хранилище"
https://docs.docker.com/reference/commandline/images/
Ответы
Ответ 1
Если вы хотите отфильтровать по имени репозитория (например: testImage), используйте только следующее:
docker images testImage
Когда у вас есть несколько изображений с тем же именем репозитория, но с разными тегами, вы можете указать теги в имени репозитория с помощью ':'
(Например, testImage:<whatever tag>
)
Источник: Изображения докеров
Ответ 2
В соответствии с документацией по адресу https://docs.docker.com/engine/reference/commandline/images/ вы можете сопоставлять символы подстановки, заключая в двойные кавычки:
docker images "scdockerdemo_*"
** специальные символы **, когда в имени репозитория есть специальные символы, такие как '/', вы должны экранировать его для фильтрации по имени репозитория.
ех)
> docker images "zirho6\/*"
REPOSITORY TAG IMAGE ID CREATED SIZE
zirho6/aaaa latest 946bf5cc28fc 2 days ago 997MB
zirho6/bbbb latest 741a6e368d07 10 days ago 866MB
zirho6/ccc latest 173b36570522 12 days ago 853MB
zirho6/dddd latest e08e5c202e9b 13 days ago 853MB
Ответ 3
Вы можете фильтровать изображения по ссылке (комбинация name
и tag
):
docker image ls --filter 'reference=scdockerdemo_*'
Ответ 4
В соответствии с этот ответ на аналогичный вопрос, опция фильтра в настоящее время поддерживает только "оборвать = true".
Если вы используете Bash, проще всего сделать это:
$ docker images | grep scdockerdemo
Или вы можете попробовать использовать awk для сопоставления строки в первом столбце:
$ docker images | awk '$1 ~ /scdockerdemo/ { print }'
Ответ 5
Предоставить еще один вариант для справки
докер изображения | ruby -ne 'помещает $ _, если $ _ = ~/harbor/'