Nginx
用於多個 LXC 容器的 Nginx 虛擬主機
我有以下配置:
我有 5 個執行 nginx 的 LXC 容器。在每個容器上,在 nginx 中設置了幾個虛擬主機。這意味著對於一個容器,我有多個可通過埠 80 使用的虛擬主機。
每個容器都有一個 IP,例如 10.0.3.100、10.0.3.101 等。
在主機上,我還執行了一個定義了虛擬主機的 nginx 伺服器。
我想知道如何實現以下目標: 主機上的 nginx 虛擬主機映射到容器上的每個虛擬主機上。
例如:主機:d1.example.com -> CONTAINER1:d1.example.com 主機:d2.example.com -> CONTAINER1:d2.example.com 主機:d3.example.com -> CONTAINER2:d3.example。 com
所有這些都應該在埠 80 上可用。
有沒有辦法實現這個設置?
這是一個反向代理,您要查找的指令是
proxy_pass
. 的主機實例nginx
將有多個server
容器,例如:server { listen 80; server_name d1.example.com; location / { proxy_pass http://10.0.3.100; proxy_set_header Host $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto $scheme; proxy_set_header Accept-Encoding ""; } }
請參閱代理模組文件和WebSocket 文件(如果適用)。