有时候需要在 docker 容器里访问宿主机提供的服务。 例如容器里的应用需要访问宿主机的 mysql 数据库服务。
有两个常用方案可以访问到宿主机。
方案一:
宿主机执行
ifconfig
会看到 docker0 那个 ip,可以使用来访问宿主机
方案二:

docker 18.03 加入了一个 feature,在容器中可以通过 host.docker.internal来访问主机 。
Use your internal IP address or connect to the special DNS name host.docker.internal which will resolve to the internal IP address used by the host.
在 windows 下我们可以使用方案二,并在 host 文件中配置
.
.
.
127.0.0.1 host.docker.internal
.
.
.
本文介绍了两种在Docker容器中访问宿主机服务的方法。方案一通过获取docker0接口的IP地址实现访问;方案二利用docker18.03新增特性,通过host.docker.internal特殊DNS名称解析宿主机内部IP进行连接。
5518

被折叠的 条评论
为什么被折叠?



