2016-07-14 56 views
1

我想在另一個容器前面有Nginx反向代理。這兩個容器將使用相同的泊塢窗網:NGINX作爲另一個容器上的反向代理 - 如何配置配置文件

docker network create my-net 

現在,通常我可以再檢查,看看是什麼IP容器,然後在Nginx的配置文件使用。我該如何做到這一點,因此它是無縫的?這樣我就可以使用一個docker-compose文件,並將兩個容器都放在同一個網絡上,並且正確配置了Nginx。

感謝

回答

1

如果您使用docker-compose,則不需要創建自己的網絡,它將創建一個專用網絡,以知道同一撰寫文件中的所有其他服務。例如:

泊塢窗,compose.yml

version: '2' 
services: 
    php: 
    image: php5.6 
    ...<snip>... 
    nginx: 
    image: nginx:stable-alpine 
    ports: 
    - "443:443" 
    links: 
    - php 
    ...<snip>... 

然後在nginx的配置:

proxy_pass http://php; 

你不應該需要指定 「鏈接」 在nginx的撰寫塊聯網(它應該知道所有的服務名稱),但它將有助於定義容器的加載順序。

默認情況下,Compose會爲您的應用程序設置一個網絡。每個 服務容器都會加入默認網絡,並且該網絡上的其他容器都可以訪問 ,並且可以通過 發現它們與容器名稱相同的主機名。

https://docs.docker.com/compose/networking/

+0

的感謝!我猜測這是使用內置的引擎的dns解析器 - 這就是你可以如何指定http:// php;在nginx.conf中? – Zuriar

+0

基本上,是的。查看上面添加的鏈接。 – ldg