社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Janne Annala  »  全部回复
回复总数  1

适用于MacOS和Windows

Docker V 18.03及以上(自2018年3月21日起)

使用您的内部IP地址或连接到特殊的DNS名称 host.docker.internal 它将解析为主机使用的内部IP地址。

Linux支持挂起 https://github.com/docker/for-linux/issues/264

带有早期版本Docker的MacOS

Mac V 17.12至V 18.02的Docker

同上,但使用 docker.for.mac.host.internal 相反。

Mac V 17.06至V 17.11的Docker

同上,但使用 docker.for.mac.localhost 相反。

Mac 17.05及以下版本的Docker

要从Docker容器访问主机,必须将IP别名附加到网络接口。你可以绑定任何你想要的IP,只要确保你没有使用它到其他任何东西。

sudo ifconfig lo0 alias 123.123.123.123/24

然后确保您的服务器正在监听上述IP或 0.0.0.0 . 如果它在本地主机上监听 127.0.0.1 它将不接受连接。

然后把你的Docker容器指向这个IP,你就可以访问主机了!

为了测试你可以运行 curl -X GET 123.123.123.123:3000 在容器里。

别名将在每次重新启动时重置,因此如果需要,请创建一个启动脚本。

解决方案和更多文档: https://docs.docker.com/docker-for-mac/networking/#use-cases-and-workarounds