我有一个应用程序在我的本地机器上的 8180 端口上运行
当我尝试 wget http://192.168.1.12:8180/auth
从 docker 容器,
我收到以下错误
--2019-10-10 08:17:03-- http://192.168.1.12:8180/auth
Connecting to 192.168.1.12:8180... failed: Connection refused.
我试过以下
❯ sudo ufw status [14:17:44]
Status: active
To Action From
-- ------ ----
8180/tcp ALLOW Anywhere
443/tcp ALLOW Anywhere
80/tcp ALLOW Anywhere
8180/tcp (v6) ALLOW Anywhere (v6)
443/tcp (v6) ALLOW Anywhere (v6)
80/tcp (v6) ALLOW Anywhere (v6)
仍然得到同样的错误。
如何解决这个问题?
最佳答案
您需要在 Docker 中使用网桥。如果 192.168.1.12 确实是您主机的 IP,则此命令将创建一个网络 'dockernet'
$ docker network create -d bridge --subnet 192.168.1.0/24 --gateway 192.168.1.12 dockernet
运行容器时使用此网络:
$ docker run --net=dockernet [...]
另一种方法是使用容器的“主机”网络驱动程序,如果您发现缺少网络隔离可以满足此目的。见 Host networking及其tutorial了解更多信息。
一般情况下,Docker's network documentation是推荐且易于阅读的。
关于docker - 从 docker 容器连接到 ubuntu 端口,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58320407/