📜  docker get container ip (1)

📅  最后修改于: 2023-12-03 14:40:49.219000             🧑  作者: Mango

Docker 获取容器IP地址

Docker 是一种流行的容器技术,它允许开发人员在可移植的环境中构建、打包和部署应用程序。在 Docker 中,每个容器都有一个唯一的 IP 地址,这使得容器之间可以相互通信。

在本文中,我们将介绍如何获取 Docker 容器的 IP 地址,并提供使用示例。

1. 查看所有容器的IP地址

要查看 Docker 中所有容器的 IP 地址,可以使用以下命令:

$ docker inspect -f '{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -aq)

该命令使用 docker inspect 命令查看有关每个容器的详细信息,并使用 {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}} 从容器的网络设置中提取 IP 地址。

如果您只想查看正在运行的容器的 IP 地址,请使用以下命令:

$ docker inspect -f '{{.Name}} - {{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' $(docker ps -q)
2. 获取单个容器的IP地址

要获取单个容器的 IP 地址,可以使用以下命令:

$ docker inspect <container_name_or_id> | grep IPAddress | cut -d '"' -f 4

该命令使用 docker inspect 命令查看有关特定容器的详细信息,并使用 grepcut 命令从输出中提取 IP 地址。

3. 使用 Docker Compose 获取容器IP地址

如果您正在使用 Docker Compose 管理多个容器的部署,可以使用以下命令获取指定服务容器的 IP 地址:

$ docker-compose exec <service_name> sh -c "hostname -I | awk '{print $1}'"

此命令使用 docker-compose exec 命令执行指定服务的 shell 命令,并使用 awk 提取第一个 IP 地址。

结论

获取 Docker 容器的 IP 地址是非常简单的。本文介绍了如何获取单个容器和所有容器的 IP 地址,并提供了使用示例。使用这些命令可以帮助您轻松地管理 Docker 容器的网络设置。