簡體   English   中英

可以在docker port之后添加前綴

[英]Is possible to add prefix after docker port

我正在使用docker容器來托管我的angular 4項目。 我有Nginx服務器在中介我的客戶端和我的API。 無法找到使用此localhost / coffee之類的方法訪問我的前端的方法。

而不是推薦的訪問docker 127.0.0.1:9000

docker run -p 9000:80 image

我是否可以在127.0.0.1:9000/coffee之后以這種方式進行操作

docker run -p 9000/coffee:80 image.

我可以訪問位置localhost / coffee,該位置在實時服務器上的端口9000上打開。 我需要在暴露的端口docker端口上添加前綴coffee。

您不能在docker端口之后添加前綴。您只能映射端口。 要訪問像localhost / coffee這樣的前端,您可以配置nginx來處理這種情況(將位置配置為/ coffee並向后端服務器請求代理)。

@Girdhar Sojitra是正確的。 您需要使用nginx作為反向代理。 我想添加一些通知。 Jwilder nginx-proxy可以為您的每個后端自動配置子域。

端口和請求URL是兩件事。 端口用於網絡通信,請求URL用於Web服務器。 所以當你跑步

docker run -p 9000:80 image

如果您要在localhost:9000上運行該應用程序,並且需要將其更改為localhost:9000/coffee此更改需要輸入代碼或Web服務器配置中,而不是docker run命令中。

一個簡單的nginx配置將

http{
server {
   listen 80;

   location /coffee/ {
       proxy_pass http://yourbackendcontainer:backendport/;
   }
}

如果您還需要將/coffee/作為URL的一部分傳遞到后端,則可以將配置更改為以下內容

http{
server {
   listen 80;

   location /coffee {
       proxy_pass http://yourbackendcontainer:backendport;
   }
}

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM