在正在运行的docker容器中,有没有办法获取运行容器的主机的IP地址?
答案 0 :(得分:3)
在容器内,默认网关的地址是主机的地址。例如,你可以这样做:
ip route | awk '$1 == "default" {print $3}'
这是Docker为您的容器网络创建的桥接设备上的主机地址。您将能够访问该地址的任何主机服务,这些服务要么在所有接口上侦听,要么绑定到该特定接口。
如果确实需要主机的外部地址,则需要通过环境变量传递该信息,如下所示:
docker run -e MY_IP=192.168.10.1 ...
或通过其他一些机制(配置文件,数据库值等)。
答案 1 :(得分:0)