2017-08-15 79 views
-1

我使用jwilder/nginx-proxy:alpine圖像來創建一個容器。這裏是鏈接nginx-proxy網站無法聯繫到

docker run -d -p 80:80 -v /var/run/docker.sock:/tmp/docker.sock.ro --name nginx \ jwilder/nginx-proxy:alpine

我已經成功地創建它跑起來容器。 然後,我開始了我的容器與環境變量被代理

docker run \ 
    -d \ 
    --entrypoint /docker-entrypoint.sh \ 
    -e VIRTUAL_HOST=xyz.mydomain.info \ //running app on xyz.mydomain.info,but 
    not working. 
    -e VIRTUAL_PORT=8000 //what does it mean? 
    --name server \ 
    image_name 

命名爲server容器被啓動和運行。

Question1:我需要在ec2安全組中打開任何端口才能以 運行該應用程序嗎?

問題2:我可以看到應用程序在xyz.mydomain.info上運行。

問題3:virtual_port在這裏有什麼用?在我的Dockerfile中,端口8000上的容器的端口號爲EXPOSE

回答

1

問題1:我需要在ec2安全組中打開任何端口才能運行應用程序嗎?

只有80或443,這取決於您正在使用哪一個。其餘全部將機器

問題2在內部工作:我可以看到應用程序運行在xyz.mydomain.info

通過要麼指向該域名到服務器的DNS條目,或通過創建主機進入你的OS主機文件(用於測試目的)

問題3:virtual_port在這裏有什麼用處?在我的Dockerfile中,端口8000上的容器的EXPOSE。

nginx-proxy需要了解應將哪個端口傳遞給容器內的流量。默認情況下,它需要暴露的端口。如果有多個,你可以指定使用哪一個VIRTUAL_PORT