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

curl:(7)无法连接到本地主机端口8090:连接被拒绝,curl,nginx,docker,reverse-proxy,Curl,Nginx,Docker,Reverse Proxy,我需要帮助。我一直在试图解决这个问题,但没有找到答案,更确切地说,我没有遇到任何问题 我有一个带有NGINX的docker容器,充当反向代理。适用于Windows 1.12.5版(9503)的Docker 在上面的代码中,localhost:8090是在我的主机上的IIS上托管的网站的url。当我访问NGINX上的url时,会出现以下错误 2016/12/27 08:11:57 [error] 6#6: *4 no live upstreams while connecting to upstr

我需要帮助。我一直在试图解决这个问题,但没有找到答案,更确切地说,我没有遇到任何问题

我有一个带有NGINX的docker容器,充当反向代理。适用于Windows 1.12.5版(9503)的Docker

在上面的代码中,localhost:8090是在我的主机上的IIS上托管的网站的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上,允许所有人匿名访问。)

获取以下错误:

curl: (7) Failed to connect to localhost port 8090: Connection refused
我是Docker和NGINX的新手。想知道是否可以访问主机上的URL?如果是,那么我错在哪里呢

如果我使用google.co.in而不是127.0.0.1:8090,同样的配置也会起作用


谢谢。

在docker容器中,
localhost
127.0.0.1
指的是容器本身。为了使用容器访问运行dockerd的主机,您必须通过其公共主机名/IP引用主机,就像它是网络上的另一台机器一样。

谢谢。成功了。我没有使用localhost,而是使用了主机名,效果非常好。修改了下面的conf详细信息:“上游mysite{server hostname:8090;}”服务器{listen 0.0.0:80;server\u name localhost;location/{proxy\u pass;}}我尝试过这个,但似乎不起作用。我也尝试过用0.0.0.0代替主机名。在nginx没有docker的情况下,我也面临着类似的问题,这解决了我的问题。非常感谢。
curl localhost:8090
curl: (7) Failed to connect to localhost port 8090: Connection refused