여러 LXC 컨테이너를 위한 Nginx 가상 호스트

여러 LXC 컨테이너를 위한 Nginx 가상 호스트

나는 다음과 같은 구성을 가지고 있습니다 :

nginx를 실행하는 5개의 LXC 컨테이너가 있습니다. 각 컨테이너에는 nginx에 설정된 여러 가상 호스트가 있습니다. 이는 하나의 컨테이너에 대해 포트 80을 통해 액세스할 수 있는 여러 가상 호스트가 있음을 의미합니다.

각 컨테이너에는 10.0.3.100, 10.0.3.101 등과 같은 IP가 있습니다.

호스트 시스템에서는 가상 호스트가 정의된 nginx 서버도 실행합니다.

다음 목표를 달성하는 방법을 알고 싶습니다. 호스트 머신의 nginx 가상 호스트를 컨테이너의 각 가상 호스트에 매핑하는 것입니다.

예: 호스트: d1.example.com -> 컨테이너 1: d1.example.com 호스트: d2.example.com -> 컨테이너 1: d2.example.com 호스트: d3.example.com -> 컨테이너 2: d3 . 예. com

이들 모두는 포트 80에서 사용할 수 있어야 합니다.

이 설정을 달성할 수 있는 방법이 있나요?

답변1

이것은 역방향 프록시이며 찾고 있는 지시문은 입니다 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   "";
  }
}

보다에이전트 모듈 문서그리고웹소켓 문서(적용된다면).

관련 정보