正如标题所示,我需要能够检索docker托管的IP地址以及从主机到容器的portmap,并在容器内部完成这些工作。


当前回答

也许我创建的容器也很有用https://github.com/qoomon/docker-host

你可以简单地使用容器名称dns访问主机系统,例如curl http://dockerhost:9200,所以不需要任何IP地址的麻烦。

其他回答

我的解决方案:

Docker运行——net=host

然后在docker容器中:

hostname -I | awk '{打印$1}'

docker network inspect bridge -f '{{range .IPAM.Config}}{{.Gateway}}{{end}}'

可以使用docker网络inspect来检索它

也许我创建的容器也很有用https://github.com/qoomon/docker-host

你可以简单地使用容器名称dns访问主机系统,例如curl http://dockerhost:9200,所以不需要任何IP地址的麻烦。

如果您在Service Fabric集群上运行Windows容器,则主机的IP地址可以通过环境变量Fabric_NodeIPOrFQDN获得。服务Fabric环境变量

唯一的方法是在创建容器时将主机信息作为环境传递

run --env <key>=<value>