1、使用docker容器內的 nginx+uwsgi+django 在服務器A(沒有域名)上部署一個簡單的Web項目
2、使用ngrok內網穿透,服務器A(沒有域名)作為ngrok客戶端,服務器B(有域名 xxx.com)作為ngrok服務端
最終實現,訪問指向服務器B的域名時,服務器B接收到請求,將請求通過ngrok轉發(fā)給服務器A,服務器A接受到請求后,將請求轉發(fā)給docker內的Web服務。
但是遇到一個問題,在我按默認配置,服務器A上的nginx監(jiān)聽80端口,docker容器映射 8088:80端口,ngrok客戶端映射子域名為fun,暴露服務器主機?8088端口時,我在外網訪問域名fun.xxx.com,會出現nginx的默認開啟界面,沒有出現我的Web服務界面。暫時搞不清楚原因。
解決方法,將服務器A上的nginx監(jiān)聽其他端口,例如監(jiān)聽8123端口,docker容器映射 8088:8123端口,ngrok客戶端映射子域名為fun,暴露服務器A 8088端口時,我在外網訪問域名fun.xxx.com,會正常顯示為我的web服務界面。
用戶訪問 fun.xxx.com ---> 服務器B上的ngrok服務端 ---> 服務器A上的ngrok客戶端 ---> 服務器A上的docker容器 --->服務器A上docker容器內的nginx掛載的Web服務
