Java/Spring

[Spring] Nginx를 이용하여 http(80 Port)로 들어오는 요청을 springboot(8080 Port)로 Redirect 시키기

SeungbeomKim 2023. 9. 27. 23:57

Nginx의 Reverse Proxy를 활용하여 80포트로 들어오는 요청을 8080포트로 redirect 시키는 실습을 해보려고 합니다.

 

Springboot Root Directory

 

Dockerfile

 

Nginx Install && redirect(80 -> 8080) 설정 

  • brew install nginx
  • mkdir ./nginx && touch nginx/default.conf

default.conf (Reverse Proxy 설정)

upstream app {
  server spring-app:8080; # WAS 컨테이너의 이름
}

server {
    listen       80;

    location / {
        proxy_pass http://app; 80포트로 들어온 요청을 8080포트로 전달
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }

}

Nginx Dockerfile (path: ./nginx/Dockerfile)

nginx Dockerfile

생성해 둔 default.conf 파일을 nginx 설정 경로에 복사하여 이미지를 빌드하게 됩니다. 

 

docker-compose.yml 

docker-compose.yml 파일

 

Container Execute

docker-compose up

container execute image

결과

result-image
8080, (80->8080) 같은 응답을 하는 것을 확인

간단하게 Nginx의 Reverser Proxy 기능을 Springboot에 적용시켜 봤고, 80포트로 요청을 보냈을 때 8080포트로 Redirect된 것을 확인할 수 있었습니다.