如何在所有容器上执行 Docker 查询命令?

How to execute Docker query command on all containers?

在 docker 中,我可以在特定容器上执行 docker inspect -f "{{ .NetworkSettings.IPAddress }}" CONTAINER 到 运行 命令。

我需要做的是像 docker inspect -f "{{ .NetworkSettings.IPAddress }}" alldocker inspect -f "{{ .NetworkSettings.IPAddress }}" * 运行 对所有容器的命令,而不是明确提及它们的名称?

它也与其他 docker 命令有关。没有bash脚本有没有这种方法?

您可以将多个容器列出到一个 docker inspect

docker inspect [OPTIONS] CONTAINER|IMAGE [CONTAINER|IMAGE...]

但是列出这些容器的唯一方法是通过 bash $(sudo docker ps -aq)

例如:

docker inspect --format='{{.Name}}' $(sudo docker ps -aq)
docker inspect -f "{{ .NetworkSettings.IPAddress }}" $(sudo docker ps -aq)

OP f1yegor proposes :

all=$(sudo docker ps -aq) docker inspect -f "{{ .NetworkSettings.IPAddress }}" $all