백앤드/CI|CD

[CI/CD] 104: Connection reset by peer 502 에러 해결

영최 2024. 3. 19. 22:51
728x90

❗️ Issue 

저와 같은 실수를 하지 않으시길 바라며..이글을 바칩니다

일단 위와 같은 104 에러를 마주치셨다면 포트 문제입니다.

 

포트가 불일치하단 의미인데 해당 어려운 이유가 아마도

1) /var/log/nginx/error.log를 봐도

2) curl localhost:4000 이런식으로 확인해봐도 똑같은 아래 에러가 떠서

curl (56) Recv failure: Connection reset by peer 

도무지 뭐가 문제인지 정확히 알 수가 없다는 점입니다.

 

💡 Solution 

자. 여러분 application.yml 파일을 혹시 변경한 적이 있으신가요?

혹시 스프링 부트의 포트가 변경되지 않았나요?

맞습니다 스프링부트의 포트가 변경되어 이런 현상이 일어난 것입니다.

 

저의 경우 아래 부분이 4000번에서 8080으로 변경되서 일어나는 이유였습니다.

server:
  port: 8080

 

 

만약 아예 다시 8080으로 변경하길 바란다면 

도커 컴포즈 파일의 도커 컨테이너 포트도 8080으로 변경해야합니다.

 

바로 이부분 4000:4000 -> 4000:8080으로 아래처럼 변경해줘야합니다. 

version: '3'
services:
  spring-app:
    container_name: spring-app
    ports:
      - "4000:8080"
    environment:
      MYSQL_HOST : mysql
      MYSQL_USER : root
      MYSQL_PASSWORD : ${MYSQL_ROOT_PASSWORD}
      MYSQL_DATABASE: ${MYSQL_DB}
    image: jayoung977/backend
    env_file:
      - .env

 

저는 젠킨스 작업환경에서 변경한후 다시 빌드 되서 104에러를 다시 마주하는 삽질을 또 했습니다. ^^

여러분은 그러지 않길 바라며...이상 글을 마치겠습니다

728x90