Я могу найти контейнер для докеров по имени: docker ps --filter='name=mvn_repo'
. Есть ли способ (не прибегая к bash/awk/grep и т. Д.), Чтобы отменить этот фильтр и перечислить все контейнеры, кроме одного с указанным именем?Как искать контейнеры, которые не соответствуют результатам «docker ps --filter»?
ответ
Docker command line reference не упоминает способ сделать это. Поэтому я заключаю, что отказ от фильтра в настоящее время не поддерживается CLI Docker.
Не уверен, почему это происходит с понижением, это было в то время и остается правильным ответом на вопрос. Q: Отрицательно ли поддерживается фильтр? A: Нет. – augurar
Вы можете использовать docker inspect
, чтобы сделать это, я создал контейнер с --name = test111, это выглядит как/test111, так что если я
docker inspect -f '{{if ne "test111" .Name }}{{.Name}} {{ end }}' $(docker ps -q) /test111 /sezs /jolly_galileo /distracted_mestorf /cranky_nobel /goofy_turing /modest_brown /serene_wright /fervent_lalande
, но если я фильтр с /, так появился
docker inspect -f '{{if ne "/test111" .Name }}{{.Name}} {{ end }}' $(docker ps -q) /sezs /jolly_galileo /distracted_mestorf /cranky_nobel /goofy_turing /modest_brown /serene_wright /fervent_lalande
Я не получить его.
Престижность Адриан Муат для его опорного поста на докер инспектировать
http://container-solutions.com/docker-inspect-template-magic/
И, как он говорит
«(К сожалению Docker печатает новую строку для каждого контейнера, соответствует ли это если или нет). " Если я поместил пустую строку, форматирование будет потеряно.
Я пришел сюда, пытаясь выяснить подобную проблему ... нашли часть решения в комментарии Николая Гурова, который я доработанную, чтобы добраться до этого:
docker ps -aq | grep -v -E $(docker ps -aq --filter='name=mvn_repo' | paste -sd "|" -)
решение Николай только работает, если есть один совместим с фильтром docker ps. Поэтому, если у вас есть целая куча контейнеров, которые вы хотите исключить, чтобы соответствовать шаблону фильтра, он будет терпеть неудачу, потому что grep
может работать только с одним выражением.
Решение, которое я предоставил, преобразует результат этого в регулярное выражение, а затем использует grep с расширенным регулярным выражением.
Чтобы разбить его ...
docker ps -aq --filter='name=mvn_repo' | paste -sd "|" -
производит такой вывод:
d5b377495a58|2af19e0029a4
, где это результат каждого из контейнера идентификаторами вступил с |
характером сформулировать регулярный выражение, которое затем можно использовать с grep.
Затем, когда используется в суб-оболочки, как это с Grep:
grep -v -E $(docker ps -aq --filter='name=mvn_repo' | paste -sd "|" -)
решает что-то вроде этого:
grep -v -E d5b377495a58|2af19e0029a4
тогда, когда мы можем конвейеру выход docker ps -aq
, чтобы получить что-то вроде этого:
docker ps -aq | grep -v -E d5b377495a58|2af19e0029a4
- 1. Где docker ps Command ищет текущие контейнеры?
- 2. ps --filter не работает с -H
- 3. если я запустил docker ps, где он ищет контейнеры?
- 4. Docker Не Linking Контейнеры
- 5. docker ps показывает пустой список
- 6. Docker-compose не запускает контейнеры
- 7. Google Таблицы соответствуют нескольким результатам
- 8. Невозможно открыть Docker контейнеры
- 9. Что такое контейнеры, например, Docker
- 10. Как искать массив поддокумент полех, которые соответствуют заданному массиву
- 11. Docker контейнеры в реальной жизни
- 12. Docker overlay network не очищает удаленные контейнеры
- 13. Docker толкая контейнеры частного реестра
- 14. Docker ps -a не показывает остановленный клиентский контейнер клиента mysql
- 15. Docker: контейнеры против локальных установок
- 16. поля, которые не соответствуют
- 17. Контейнеры Kubernetes & docker Соответствие стандарту PCI DSS
- 18. Значения, которые не соответствуют
- 19. Docker-compose ps не показывает какой-либо вывод
- 20. Docker Контейнеры не работает при загрузке boot2docker
- 21. Динамически обслуживающие контейнеры django docker
- 22. Удалить изображения докеров и контейнеры, которые занимают дисковое пространство
- 23. Docker: Не удается удалить оборванных контейнеры
- 24. Трэвис не может остановить контейнеры Docker
- 25. FTP в существующие контейнеры Docker
- 26. Docker составляют сиротские контейнеры при переопределении услуг
- 27. Как лучше всего подключить контейнеры в Docker
- 28. Как Docker для Windows запускает контейнеры Linux?
- 29. Как быстро переключать контейнеры Docker на производство?
В качестве обходного решения я использую оболочку: 'docker ps -aq | grep -v $ (docker ps -q --filter = 'name = mvn_repo') '. –