[AWS] 포트가 이미 사용중으로 인해 서버가 시작하지 못하는 에러

Loopy·2022년 3월 30일
0

삽질기록

목록 보기
8/28
post-thumbnail
post-custom-banner

☁️ 에러 내용

오늘의 옷 서비스를 ec2에서 백그라운드로 돌리고 있다 생각했는데, 회원가입이 안된다는 지인의 제보를 듣고 후다닥 nohup.out의 로그를 살펴보았다.

8080 포트가 이미 사용중이여서(왜..?) 애초에 서버 구동이 안되었던 것 같다. 근데 개발 서버는 한 곳 밖에 없기 때문에, 의문점에 일단 8080 포트를 사용하고 있는 프로세스를 찾기 위해 다음과 같이 입력하였다.

ps -ef | grep 8080

근데 아무 결과가 출력되지 않아서 이때 부터 삽질을 하기 시작했다..😥

☁️ 원인

WAS가 이미 실행 중?

구글링을 해보았더니, web server인 nginx가 실행되고 있을때 자주 발생하는 에러라고 하였다. 하지만, 나는 reverse proxy를 적용해주는 과정에서 포트를 80으로 바꿨기 때문에 해당이 안되는 사항이다.

☁️ 해결 방법

이전에 사용했던 ps 명령어로는, 해당 포트를 사용하고 있는 프로세스를 알 수 없다. 대신, netstat 라는 명령어를 발견하였다.

해당 포트를 사용하는 프로세스 PID 확인하기

sudo netstat -tnlp | grep 8080  # 8080를 쓰고 있는 프로세스만 뽑아내기
ps - ef | grep [pid]

주의할 점
관리자 계정으로 접속해서 명령어를 실행하거나, 꼭 sudo를 붙여줘야 pid를 확인 가능하다.

22752가 사용중이므로, 해당 프로세스를 종료하고 다시 배포 스크립트를 실행했더니 애플리케이션이 성공적으로 구동된 것을 볼 수 있다!

kill -9 [PID]

profile
개인용으로 공부하는 공간입니다. 잘못된 부분은 피드백 부탁드립니다!
post-custom-banner

0개의 댓글