inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]

Reverse Proxy 와 주요 nginx 웹서버 설정 익히기1

reverse proxy 할 때, nginx.conf와 dockerfile에 관하여 질문이 있습니다.

409

Yong Hwan Kim

작성한 질문수 3

0

색션 11 reverse proxy 관련 문의 드릴 것이 있습니다.

reverse proxy 위하여 nginx.conf 파일에서 어떤 port로 요청이 오면 어떤 container 로 연결할지 설정해주고 있습니다. 가령 아래 코드는 8080 포트로 연결이 오면 docker-nginx로 포워딩하여 nginx라는 container의 80 포트로 연결을 합니다.

upstream docker-nginx {

server nginx:80

}

listen 8080

location /{

proxy_pass http://docker-nginx

}

즉 위와 같이 nginx.confd에는 외부 포트와 container간의 연결이 정의되어 있는데요.. docker-compose 파일을 보면 port라는 key로 proxy 서버의 포트 연결을 또 정의 합니다.

ports:

-"8080:8080"

-"8081:8081"

 

즉 nginx.conf에서 외부 포트와 container간의 연결을 설정하면 docker-compose 파일에서 port 연결 명령은 필요 없을까요?

네트워크 linux docker

답변 1

0

잔재미코딩 DaveLee

안녕하세요. 답변 도우미입니다.

nginx.conf 파일에서 upstream과 location을 설정하여 요청을 특정 포트로 받으면 특정 컨테이너로 연결해주는 설정을 하고 있습니다. 예를 들어, 8080 포트로 요청이 오면 nginx라는 컨테이너의 80 포트로 포워딩해주는 설정은 다음과 같습니다:

```nginx

upstream docker-nginx {

server nginx:80;

}

server {

listen 8080;

location / {

proxy_pass http://docker-nginx;

}

}

```

이 설정은 reverse proxy 역할을 하는 nginx 서버의 설정입니다.

반면, docker-compose 파일에서 ports 키워드는 Docker 컨테이너의 호스트와 컨테이너 내부의 포트를 매핑하는 역할을 합니다. 예를 들어:

```yaml

services:

proxy:

image: nginx

ports:

- "8080:8080"

- "8081:8081"

```

이 설정은 호스트 머신의 8080 포트를 컨테이너의 8080 포트에 매핑하고, 호스트 머신의 8081 포트를 컨테이너의 8081 포트에 매핑하는 역할을 합니다.

이 두 설정은 상호 보완적인 역할을 합니다. nginx.conf 파일에서 reverse proxy 설정을 하더라도, docker-compose 파일에서 해당 컨테이너의 포트가 호스트와 연결되지 않으면 외부에서 접근이 불가능합니다. 따라서 docker-compose 파일에서 포트 매핑 설정은 여전히 필요합니다.

정리하자면:

- nginx.conf 파일: reverse proxy 설정 (외부 요청을 특정 컨테이너의 특정 포트로 포워딩)

- docker-compose.yml 파일: 호스트와 컨테이너 간의 포트 매핑 설정 (외부에서 해당 포트로 접근할 수 있도록 설정)

따라서 두 파일의 설정은 모두 필요하며, 각각의 역할을 이해하고 적절히 설정해야 합니다.

감사합니다.

잔재미코딩 드림

25년도 12월 docker compose 설치 방법이 레거시된 상황

0

99

1

학습자료는 구글드라이브에서만 볼 수 있나요?

0

79

1

강의 외 개발자 진로 관련 질문입니다!

0

64

1

왜 전 오류가 뜨나요??

0

98

1

학습자료가 없어요

0

143

1

강의가 재생이 되지 않습니다.

0

97

1

풀스택을 위한 도커와 최신 서버 기술(리눅스, nginx, AWS, HTTPS, 배포까지) [풀스택 Part3]

0

67

1

도커와 최신 서버 기술 수료시 웹 배포

0

150

1

개인키, 공인 인증서 폴더

0

134

1

워드프레스가 어렵네요 ㅠㅠㅠ

0

163

2

도커 활용하기 (주피터 노트북 서버 만들어보기)에서 질문있습니다

0

152

1

안녕하세요 배포 관련 질문이 있습니다.

0

137

1

ec2 인스턴스에서 우분투 버전관련 문의입니다

0

210

1

주피터 노트북 서버 만들어보기_pymysql 설치관련

0

253

1

window 데스크탑에 도커 사용하려고 하는데요~

0

167

1

안녕하세요 aws 사용 안해도 되나요 ?

0

183

1

/usr/local/apache2/htdocs 경로관련

0

223

2

섹션 16, 17 docker-compose up -d 명령 실행 시 다운로드 속도 느려짐

0

221

1

도커 컨테이너와 이미지 조사하기-docker run 실행시 컨테이너 생성 안됨 오류

0

448

1

mysql 접속 port 개방할 때 궁금한 점이 있습니다.

0

156

1

강의 소개에 나오는 강의자료? 들은 어떻게 받을수 있나요?

0

194

1

[인프런-수업자료요청] e북 자료(구글) 권한 요청드립니다 !

0

145

1

AWS VPC 과금 문제(탄력적 IP)

0

384

2

강의 섹션2 이후부터 강의화면 안보이는 이슈있습니다.

0

186

1