[英]How to add automatic prefix before bash command ([prefix] docker exec)
[英]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.