개발/에러

윈도우 사용중인 포트 / TCP 포트 제외 범위로 인한 어플리케이션 실행 불가

2025. 5. 11. 01:10
반응형
***************************
APPLICATION FAILED TO START
***************************

Description:

Web server failed to start. Port 8080 was already in use.

Action:

Identify and stop the process that's listening on port 8080 or configure this application to listen on another port.

8080포트를 사용한 적이 없는데, 스프링 부트 실행이 안된다.

 

netstat -ano | findstr :8080

cmd에 위와 같은 명령어를 적어 혹여나 8080포트를 사용하는 프로세스가 있는지 확인한다.

 

TCP    127.0.0.1:8080         0.0.0.0:0              LISTENING       12345

만약 있다면, 위와 같이 결과가 나오는데 마지막의 12345가 사용중인 PID이다.

 

taskkill /F /PID 12345

그러면 이 명령어를 통해 강제로 프로세스를 종료시키고, 앱을 다시 실행시켜보자.

 

하지만, 나의 경우 8080 포트를 사용중인 프로세스는 존재하지 않았다. 도대체 왜 안되는가..

요즘 개발환경 세팅하느라 WSL, Hyper-K, Docker를 사용중이다. 이거 때문인가?

 

netsh interface ipv4 show excludedportrange protocol=tcp

윈도우에 의해 사용자가 사용하지 못하도록 점유된 TCP 포트가 있는지 확인해보자

잡았다 요놈,, 8002~8101이 있어서 내 스프링 부트 앱이 실행이 안됐었다..

 

netsh int ipv4 delete excludedportrange protocol=tcp startport=8002 numberofports=100

이 명령어를 사용해서 해당 부분만 없애주거나,

net stop winnat
net start winnat

이렇게 아예 NAT를 재시작하여 점유된 포트를 초기화시켜도 된다.

재시작 했더니

깔끔해졌다.

 

다시 스프링 부트를 실행시켜보면! 굿. 잘된다!

 

* 나중에 이런 작업을 다시 안하기 위해 8080부터 8089 포트를 점유 제외 대상으로 만들었다.

netsh int ipv4 add excludedportrange protocol=tcp startport=8080 numberofports=10

 

BELATED ARTICLES

more