Запустите команды docker, используя glob / wildcard для имен контейнеров - PullRequest
0 голосов
/ 31 августа 2018

Я использую docker-compose up --scale для создания нескольких версий одного контейнера. В результате я получаю контейнеры с именами container_foo_1, container_foo_2 и т. Д.

Поддерживает ли docker какие-либо сопоставления глобальных символов и подстановочных знаков для имен контейнеров в инструментах командной строки? Что я хочу сделать, это:

docker inspect container_foo_*

То, что я сейчас делаю в краткосрочной перспективе, просто использует:

docker-inspect container_foo_{1,2} (с использованием расширения фигурной скобки)

но я бы с удовольствием, если бы был способ, где я не знал, сколько было контейнеров / какие числа были впереди.

1 Ответ

0 голосов
/ 31 августа 2018

Вы можете использовать аргумент --filter | -f в docker ps с docker inspect.

Использование: docker ps --filter key=value, где value принимает регулярные выражения.

В настоящее время поддерживаются следующие фильтры:

  • id Идентификатор контейнера
  • name Название контейнера
  • label Произвольная строка, представляющая либо ключ, либо пару ключ-значение. Выражается как или =
  • exited Целое число, представляющее код выхода контейнера. Полезно только с --all.
  • status Один из созданных, перезапущенных, запущенных, удаленных, приостановленных, вышедших из строя или мертвых
  • ancestor Фильтрует контейнеры, которые совместно используют данное изображение в качестве предка. Выражается как * [:] или
  • before or since Фильтрует контейнеры, созданные до или после заданного идентификатора или имени контейнера
  • volume Фильтрует работающие контейнеры, которые установили заданный объем или привязку.
  • network Фильтрует запущенные контейнеры, подключенные к данной сети.
  • publish or expose Фильтрует контейнеры, которые публикуют или выставляют данный порт. Выражается как <port>[/<proto>] или <startport-endport>/[<proto>]
  • health Фильтрует контейнеры в соответствии с их статусом проверки работоспособности. Один из начинающих, здоровый, нездоровый или нет.
  • isolation Только для Windows-демона. Один из значений по умолчанию, process или hyperv.
  • is-task Фильтрует контейнеры, которые являются «задачей» для службы. Булево значение (true или false)

Пример: docker inspect $(docker ps --filter name=^/server)

Ссылки

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...