查看 Docker 容器的 IP 地址有几种方法,这里列出了一些常见的方法:

方法一:使用 docker inspect 命令

docker inspect 命令可以提供容器的详细信息,包括 IP 地址。以下是具体步骤:

  1. 获取容器的 ID 或名称。可以通过 docker ps 命令查看正在运行的容器列表。

    docker ps
    
  2. 使用 docker inspect 命令获取容器的详细信息,并通过 grepjq 工具过滤出 IP 地址。

    docker inspect <container_id_or_name> | grep '"IPAddress"' | head -n 1 | awk '{print $2}' | tr -d '",'
    

    或者使用 jq 工具(如果已安装):

    docker inspect <container_id_or_name> | jq -r '.[0].NetworkSettings.IPAddress'
    

方法二:使用 docker inspect 命令结合网络名称

如果你知道容器所属的网络名称,可以更精确地获取 IP 地址:

docker inspect -f '{{range $key, $value := .NetworkSettings.Networks}}{{$key}}: {{$value.IPAddress}}{{end}}' <container_id_or_name>

方法三:使用 docker exec 命令

你可以在容器内执行命令来获取其 IP 地址。例如,对于基于 Linux 的容器,可以使用 ip addr 命令:

  1. 获取容器的 ID 或名称。

    docker ps
    
  2. 执行 ip addr 命令:

    docker exec <container_id_or_name> ip addr show eth0
    

方法四:使用 docker network inspect 命令

如果你知道容器所属的网络名称,可以使用 docker network inspect 命令来查看该网络下的所有容器及其 IP 地址:

  1. 获取网络名称。

    docker network ls
    
  2. 查看网络详细信息:

    docker network inspect <network_name>
    

在输出中,找到你的容器并查看其 IP 地址。

示例

假设你有一个正在运行的容器,其名称为 my_container,你可以使用以下命令获取其 IP 地址:

docker inspect -f '{{range $key, $value := .NetworkSettings.Networks}}{{$key}}: {{$value.IPAddress}}{{end}}' my_container

输出可能类似于:

bridge: 172.17.0.2

这表示 my_containerbridge 网络中的 IP 地址是 172.17.0.2

Logo

为开发者提供按需使用的算力基础设施。

更多推荐