Docker 容器查看本地局域网 IP

Docker 容器查看本地局域网 IP

在 Docker 容器内部,可以使用以下方法查看 IP 地址:


1. 查看容器的 IP

方法 1:使用 ip a

ip a
  • 适用于大多数 Linux 发行版。
  • 容器的 IP 通常属于 172.17.0.X 网段(默认 bridge 网络)。

方法 2:使用 ifconfig

ifconfig

如果 ifconfig 不存在,可安装:

apt update && apt install -y net-tools   # Ubuntu/Debian
yum install -y net-tools                 # CentOS

方法 3:仅显示 IPv4

hostname -I | awk '{print $1}'
  • 如果有多个网卡,此命令返回第一个 IP。

2. 获取 Docker 容器的默认网关(宿主机 IP)

ip route | awk '/default/ {print $3}'
  • 适用于 bridge 网络模式,返回 docker0 的 IP(通常是 172.17.0.1)。

3. 在宿主机上查看容器 IP

docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' <容器名或ID>

或者查看 bridge 网络中的所有容器:

docker network inspect bridge

4. 如果容器使用 host 网络

  • --network=host 模式下,容器和宿主机共享网络,容器 IP 和宿主机相同。
  • 在容器内运行:
    ip a
    
    结果与宿主机相同。

总结

网络模式 查看 IP 方法 说明
bridge(默认) ip a / hostname -I / docker inspect 容器有独立 IP,通常是 172.17.x.x
custom network docker network inspect <network> 容器 IP 由 Docker 分配
host ip a IP 与宿主机相同
posted @ 2025-03-13 16:21  槑孒  阅读(801)  评论(0)    收藏  举报