본문 바로가기
Python/Flask

[Flask, Nginx] 하나의 IP에 두개의 서비스 배포하기

by @김상현 2024. 6. 25.
반응형

조건은 아래와 같다.

1. 동일한 IP

2. 서로 다른 도메인

3. 독립적으로 ON/OFF 가능

 

필자는 두개의 서비스가 버전 차이라고 간주 할 수 있을 만큼 아주 유사하여 동일한 경로를 가지는 API들이 대부분이다.

 

해답은 간단하다.

1. 각 서비스에 해당하는 Nginx 서버 설정파일을 만든다 (/sites-available/)

2. server/location/ 아래에 여러 설정 중, 하나를 추가한다.

  - `proxy_pass http:127.0.0.1:{service_port};` 와 같이 설정하면 된다.

  - 필자는 A 서비스는 5000, B 서비스는 5001로 설정함.

끝.

3. 이제 각 service를 실행하면 된다.

코드가 다른 설정 파일에 포트 관련 설정이 있다면 복잡해지겠지만

해당 설정을 건드리지 않고 사용했다면 위와 같은 설정만 하면 해결 될 것이다.

 

 

반응형

댓글