目录标题
在主机上查看所有 Docker 容器的网络地址可以通过以下几种方法实现:
for c in $(docker ps -qa); do echo inspect $c; docker inspect $c |grep IPAddress ; done;
方法 1:使用 docker ps 和 docker inspect
-
列出所有正在运行的容器:
docker ps这将显示所有正在运行的容器及其基本信息,包括容器 ID 和名称。
-
获取容器的详细网络信息:
使用以下命令获取特定容器的网络配置:docker inspect <container_id_or_name>这将输出容器的详细信息,包括网络设置。
-
提取容器的 IP 地址:
从docker inspect的输出中,找到NetworkSettings部分,查看IPAddress。例如:"NetworkSettings": { "IPAddress": "172.17.0.2", "IPPrefixLen": 16, ... }
方法 2:使用 docker network inspect
-
列出所有 Docker 网络:
docker network ls这将列出所有 Docker 网络及其 ID 和名称。
-
检查特定网络的容器信息:
使用以下命令查看特定网络中的容器及其 IP 地址:docker network inspect <network_id_or_name>输出示例:
[ { "Name": "bridge", "Id": "1a2b3c4d5e6f7g8h9i0j1k2l3m4n5o6p7q8", "Containers": { "container_id": { "Name": "container_name", "EndpointID": "endpoint_id", "MacAddress": "02:42:ac:11:00:02", "IPv4Address": "172.17.0.2/16", "IPv6Address": "" } }, ... } ]
方法 3:使用 docker exec 执行命令
-
进入容器:
使用以下命令进入容器的 shell:docker exec -it <container_id_or_name> /bin/bash -
在容器内查看网络配置:
在容器内执行以下命令查看网络接口:ip addr或者:
ifconfig这将显示容器内的网络接口及其 IP 地址。
方法 4:使用 docker-compose(如果适用)
如果你使用 docker-compose 管理容器,可以通过以下命令查看网络信息:
-
列出所有服务和容器:
docker-compose ps -
查看特定服务的网络信息:
docker-compose inspect <service_name>
方法 5:使用 docker run 的 --net 选项
如果你需要查看特定网络的容器信息,可以在运行容器时指定网络,并使用 docker inspect 查看详细信息:
docker run --net my_network -itd alpine sh
然后使用 docker inspect 查看容器的网络设置。
总结
- 快速查看容器 IP 地址:使用
docker inspect <container_id>并查找NetworkSettings.IPAddress。 - 查看所有容器的网络信息:使用
docker network inspect <network_id>。 - 进入容器查看网络接口:使用
docker exec执行ip addr或ifconfig。
这些方法可以帮助你轻松获取主机上所有 Docker 容器的网络地址。

被折叠的 条评论
为什么被折叠?



