Reverse proxy from NGINX container to Url on host

Need help. Have been trying for a solution to this issue and could not see an answer or rather I have not come across any.

I have a docker container with NGINX, acting as a reverse proxy. Docker for Windows version 1.12.5(9503).

upstream mysite {
    #server localhost:8090; (have also tried this option)

server {
    server_name  localhost;

    location / {
        proxy_pass http://mysite;

In the above code localhost:8090 is a url of a website that is hosted on IIS on my host machine. When I access the url on NGINX, I get the following error

2016/12/27 08:11:57 [error] 6#6: *4 no live upstreams while connecting to upstream, client:, server: localhost, request: "GET / HTTP/1.1", upstream: "http://googlesite/", host: "localhost" - - [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" "-"

Tried to access the url on the host machine (simple HTML site, single page with only simple html, hosted on IIS with anonymous access granted to all.)

curl localhost:8090
Getting the following error:

curl: (7) Failed to connect to localhost port 8090: Connection refused
Am new to Docker and NGINX. Would like to know if it is possible to access urls on the host machine? If Yes, then where am I wrong.

The same configuration works, if I use instead of


I had the same issue as you. I finally followed this instructions to setup docker and nginx as reverse proxy.

The “Failed to connect to localhost port 8090:” is solved using an environment variable as the instructions I put says. hope it helps!

Hello, I had the same problem that I solved with

in docker-compose.yml :

      - "9090:9090"

in conf.d/default.conf or nginx.conf :

upstream website {
    server mysite:9090;

Warning: the mysite name in the upstream part corresponds to the container name in docker-compose!

in part server:

gzip_types text/plain text/css application/json application/x-javascript text/xml application/xml application/xml+rss text/javascript;

in location / :

rewrite ^/(.*) /$1 break;
proxy_pass http://website;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header   X-Forwarded-Host $server_name;
proxy_redirect     off;
1 Like