DeveloPiano

Web server failed to start: Port 8080 was already in use 에러 해결 방법 본문

Develop/Spring

Web server failed to start: Port 8080 was already in use 에러 해결 방법

DevPi 2025. 3. 31. 11:20
반응형

 

웹 개발을 하다 보면 자주 마주치는 오류 중 하나가 바로 다음과 같은 메시지입니다:

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

처음 접하는 개발자라면 이 메시지가 다소 당황스럽게 느껴질 수 있습니다. 이 포스팅에서는 이 오류가 발생하는 원인과 해결 방법을 단계별로 알아보겠습니다.


❓ 이 오류는 무엇인가요?

간단히 말해, 8080번 포트를 이미 다른 프로그램이 사용 중이기 때문에 새로 실행하려는 웹 서버가 해당 포트를 사용할 수 없어 발생하는 오류입니다.

8080번 포트는 웹 개발에서 자주 사용하는 기본 포트 중 하나로, 여러 애플리케이션(예: Tomcat, Spring Boot 등)에서 기본값으로 설정되어 있습니다.


🛠 해결 방법

1️⃣ 포트를 사용 중인 프로세스 찾기

▶ Windows

netstat -ano | findstr :8080

이 명령어를 입력하면 8080번 포트를 사용 중인 프로세스 ID(PID)를 확인할 수 있습니다.

PID가 확인되면 다음 명령어로 어떤 프로세스인지 확인할 수 있습니다:

tasklist | findstr [PID]

▶ macOS / Linux

lsof -i :8080

또는

sudo netstat -lpn | grep :8080

 

2️⃣ 사용 중인 프로세스를 종료하기

  • Windows: 작업 관리자(Task Manager)에서 해당 PID를 가진 프로세스를 찾아 종료합니다.
  • macOS/Linux: 다음 명령어로 종료할 수 있습니다:
kill -9 [PID]

 

3️⃣ 다른 포트로 변경하기

해당 포트를 종료할 수 없는 경우에는 웹 서버가 사용할 포트를 변경하는 방법도 있습니다.

▶ Spring Boot 예시

# application.properties
server.port=8081

또는

# application.yml
server:
  port: 8081

이렇게 하면 8080번 대신 8081번 포트를 사용하게 됩니다.


✅ 추가 팁

  • 반복적으로 충돌이 일어난다면, 시스템 부팅 시 자동 실행되는 앱 중 포트를 점유하는 프로그램이 있는지 확인해 보세요.
  • 개발 중에는 포트를 고정하지 않고 랜덤 포트를 사용하도록 설정하는 것도 좋은 방법입니다.
  • IDE 설정이나 도커 포트 포워딩 설정도 확인해 보세요. 예상치 못한 포트 점유 원인이 될 수 있습니다.

🧩 결론

Web server failed to start. Port 8080 was already in use 오류는 포트 충돌 때문에 발생하며,

  1. 현재 포트를 점유한 프로세스를 찾아 종료하거나,
  2. 사용하려는 애플리케이션의 포트를 변경함으로써

간단히 해결할 수 있습니다.

이 오류는 자주 발생할 수 있지만, 원리와 해결 방법을 이해하고 나면 손쉽게 대처할 수 있습니다. 🙌

반응형