2017-02-24 88 views
3

简短说明:泊坞窗nginx的代理托管

Nginx的泊坞窗上运行,如何配置nginx的,以便它调用转发到主机。

长描述:

我们有一个网络应用,通信,夫妇后端的(可以说rest1,rest2和rest3)。我们负责rest1

让我们考虑我在我的电脑上手动启动rest1并在2345端口上运行。我希望nginx(它在docker中运行)将所有调用重定向到rest1到我自己的运行实例(请注意,实例正在主机上运行,​​不是任何容器,也不在docker中)。并且可以将rest2rest3添加到其他某个码头节点,或者可能是某个其他服务器(关心的人)。

我所寻找的是:

  1. docker-compose.yml配置(如果需要)。
  2. nginx配置。

在此先感谢。

回答

1

nginx的配置类似如下(请确保您更换泊坞窗主机的IP),并保存为default.conf

server { 
    listen  80; 
    server_name _; 
    location/{ 
     proxy_pass http://<IP of Docker Host>; 
     index index.html index.htm; 
    } 
    error_page 500 502 503 504 /50x.html; 
    location = /50x.html { 
     root /usr/share/nginx/html; 
    } 
} 

现在打开容器:

docker run -d --name nginx -p 80:80 -v /path/to/nginx/config/default.conf:/etc/nginx/conf.d/default.conf nginx 
+0

谢谢,没有尝试它尚未,但我很快。无论如何自动化过程?我的意思是主机IP?因为我们想要开发可以在每台机器上运行的东西。 –

+2

使用bash脚本,首先'hostname -I',然后'grep'范围,然后'sed'进入配置文件并替换。 –

+0

或者使用像盐这样的配置管理工具。 –