有几种方法可以查看正在运行的 Docker 容器的 IP 地址:
可以使用 docker inspect
命令来获取容器的详细信息,其中包括容器的 IP 地址。下面是一个示例命令:
docker inspect <container_id> | grep IPAddress
这个命令将输出容器的 IP 地址,类似于 "IPAddress": "172.17.0.2"
。
另一种方法是使用 docker ps
命令列出正在运行的容器,并查看容器的 "PORTS" 列。这里通常会显示容器的 IP 地址和端口信息。例如:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
a1b2c3d4e5f6 nginx "nginx -g ..." 10 minutes ago Up 9 minutes 0.0.0.0:80->80/tcp my-nginx-container
在上面的输出中,容器的 IP 地址为 0.0.0.0
,它映射到主机的 80 端口。
除直接查看 Docker 容器的 IP 地址,您还可以在容器内部获取它。这可能会在某些情况下更有用,例如当您需要在容器中运行的应用程序访问容器自身时。以下是一些方法:
在容器内部,您可以使用 ip addr
命令来获取容器的 IP 地址。这个命令将列出容器的网络接口和 IP 地址信息。例如:
/ # ip addr
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000
link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00
inet 127.0.0.1/8 scope host lo
valid_lft forever preferred_lft forever
26: eth0@if27: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default
link/ether 02:42:ac:11:00:02 brd ff:ff:ff:ff:ff:ff link-netnsid 0
inet 172.17.0.2/16 brd 172.17.255.255 scope global eth0
valid_lft forever preferred_lft forever
在上面的输出中,容器的 IP 地址为 172.17.0.2
。
另一种方法是使用 hostname -i
命令,它将输出容器的 IP 地址。这个命令更简单,但提供的信息可能不如 ip addr
命令详细。例如:
/ # hostname -i
172.17.0.2
通过这两种方法,您可以轻松地获取正在运行的 Docker 容器的 IP 地址。这对于连接和访问容器,以及在容器内部和外部进行通信非常有用。