docker容器都是运行在虚拟机和自己的虚拟的网络上的,想要访问host端口有两种方案。
配置docker容器使用host网络
这种方案最直接,你只需要docker run --network="host" ... 就可以了。要知道,在默认的情况下--network="bridge",然后容器是通过docker虚拟网络与主机相同的。
查询主机在docker网络下的ip
主机下运行此命令,即可查询主机在docker默认网络(--network="bridge")下的ip地址。
sudo ip addr show docker0
更多信息,参考这里