Docker是完全虚拟化一个环境出来,在Docker中的localhost127.0.0.1都是访问Docker虚拟环境内的,无法访问到宿主主机。

如果我们的Docker里的应用要访问宿主主机的话,可以建立一个桥接网络

docker network create -d bridge --subnet 192.168.0.0/24 --gateway 192.168.0.1 hostNet

hostNet是桥接网络名
192.168.0.0是桥接子网,Docker内应用通过192.168.0.1访问宿主主机

http://127.0.0.1:8080
变更为
http://192.168.0.1:8080

如果仍无法访问,检查iptables规则是否影响了访问。可以用iptables -F清空防火墙规则