如何设置Nginix Docker反向代理

时间:2019-03-11 01:04:48

标签: azure docker nginx

我正在尝试将Nginix反向代理容器用于在非标准端口上运行的Web应用程序(另一个docker容器)

不幸的是,我无法编辑某些供应商开发的Web应用程序容器,因此我有一个明确的要求,我需要将nginx设置为80/443的前端并将所有请求转发到10.0.0.0:10101(Web应用程序容器)。

我尝试过使用jwilder / nginx代理和默认的docker nginx容器无法获得正确的配置。任何线索都很好。

目前我尚未共享任何conf文件,我可以按需共享。这是环境细节

OS - Ubuntu
Azure

1 个答案:

答案 0 :(得分:0)

使用proxy_pass nginx功能

假设您同时链接了两个容器,并且Web应用程序容器的名称为webapp,请在nginx容器上使用此配置

  upstream backend {
    server webapp:10101;
  }

  server {
    listen 80;

    location / {
      proxy_pass   http://backend;
    }
  }

注意:请注意,我跳过了一些配置,因为这只是一个示例

将配置放入nginx.conf文件中,然后像这样部署容器

docker run -d -v $(pwd)/nginx.conf:/etc/nginx/nginx.conf -p 80:80 nginx 

然后,您将可以在http://locahost

上访问Web应用程序