在主機 Nginx 後面使用多個 dockerized Nginx

在主機 Nginx 後面使用多個 dockerized Nginx

我有多個不同的 dockerized 應用程序,每個應用程式都附帶其適當的 Nginx 服務,該服務根據某些規則將流量發送到其容器。

我需要將這些應用程式放在同一台伺服器上,因此我在主機中新增了一個新的 Nginx 來處理 SSL,並將流量轉送到正確的 dockerized Nginx。

問題:可以在主機中使用 Nginx 將流量轉送到多個不同的 dockerized Nginx 嗎?它有任何已知的問題嗎?這會影響效能嗎?

答案1

  1. 可以在主機中使用 Nginx 將流量轉送到多個不同的 dockerized Nginx 嗎?

    是的,這實際上是一種常見做法。

  2. 它有任何已知的問題嗎?

    由這個設定本身引起的 - 不。

  3. 這會影響效能嗎?

    在某種程度上 - 當然:像所有其他負載平衡器(確實如此)一樣,它會在緩衝和 TCP 套接字上增加一些延遲。

答案2

  1. 可以在主機中使用 Nginx 將流量轉送到多個不同的 dockerized Nginx 嗎?

    是的。這是一種方法。

  2. 它有任何已知的問題嗎?

    NGINX 的主機實例不是容器化的,這可能會使配置更加困難。另一種常見的方法是讓 docker 容器綁定到端口80,並443處理所有入口流量並將其轉移到相應的容器。

    最後,其他容器編排系統(例如 Kubernetes)具有內建概念Ingress,並允許像在 Docker compose 中配置容器一樣進行配置。 Kubernetes Ingress 的優點是它可以向上/向下擴展到多個伺服器,而 Docker compose 則受到更多限制。

  3. 這會影響效能嗎?

    到達目標容器的額外躍點確實會對效能產生負面影響,但這是常見的事情。

相關內容