是否有一个命令可以让我在创建新容器后从主机上直接获得容器的IP地址?
基本上,一旦Docker创建了容器,我就想推出自己的代码部署和容器配置脚本。
inspect的--format
选项来拯救我们。
现代Docker客户端语法。
docker inspect -f '{{range .NetworkSettings.Networks}}{{.IPAddress}}{{end}}' container_name_or_id
旧版Docker客户端语法。
docker inspect --format '{{ .NetworkSettings.IPAddress }}' container_name_or_id
这将只返回IP地址。
正如评论中提到的:如果你是在Windows上,请使用双引号"
,而不是大括号周围的单引号'
。
在Docker 1.3以上版本中,你也可以通过以下步骤检查。
进入运行中的Docker(Linux)。
docker exec [container-id or container-name] cat /etc/hosts
172.17.0.26 d8bc98fa4088
127.0.0.1 localhost
::1 localhost ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
172.17.0.17 mysql
对于windows来说。
docker exec [container-id or container-name] ipconfig