curl:(7)无法连接到本地主机端口8090:连接被拒绝

需要帮忙。 一直在试图解决这个问题,并没有看到答案,或者我没有遇到任何问题。

我有一个与NGINX的docker集装箱,充当反向代理。 Docker for Windows版本1.12.5(9503)。

upstream mysite { server 127.0.0.1:8090; #server localhost:8090; (have also tried this option) } server { listen 0.0.0.0:80; server_name localhost; location / { proxy_pass http://mysite; } } 

在上面的代码中,localhost:8090是在主机上的IIS上托pipe的网站的url。 当我访问NGINX上的url时,出现以下错误

 2016/12/27 08:11:57 [error] 6#6: *4 no live upstreams while connecting to upstream, client: 172.17.0.1, server: localhost, request: "GET / HTTP/1.1", upstream: "http://googlesite/", host: "localhost" 172.17.0.1 - - [27/Dec/2016:08:11:57 +0000] "GET / HTTP/1.1" 502 173 "-" "Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:50.0) Gecko/20100101 Firefox/50.0" "-" 

试图访问主机上的url

(简单的HTML网站,只有简单的HTML的单页,在IIS上托pipe,匿名访问全部授予)。

 curl localhost:8090 

获取以下错误:

 curl: (7) Failed to connect to localhost port 8090: Connection refused 

我是Docker和NGINX的新手。 想知道是否有可能访问主机上的url? 如果是,那么我错在哪里。

如果我使用google.co.in而不是127.0.0.1:8090,相同的configuration工作。

谢谢。

在Docker容器中, localhost127.0.0.1引用容器本身。 为了使用你的容器访问运行docker的主机,你必须通过它的公共主机名/ IP来访问主机,就好像它是网络上的另一台机器一样。