docker 실행 시 port 충돌 문제
도커 실행 시 "ports are not available" 오류가 발생하면 해당 포트를 점유한 프로세스를 강제 종료하면 해결할 수 있다. 관리자 권한으로 파워셸을 열어 netstat -ano | findstr :포트번호로 PID를 확인한 뒤 taskkill /PID /F로 종료하면 된다.
도커를 사용하여 백엔드 서버를 실행시키려고 하다 보면 가끔 다음과 같은 에러가 발생하는 경우가 있다. Error response from daemon: ports are not available: exposing port TCP 127.0.0.1:8443 -> 127.0.0.1:0: listen tcp4 127.0.0.1:8443: bind: An attempt was made to access a socket in a way forbidden by its access permissions. 이 경우 8443 포트를 사용하고 있는 프로세스를 강제로 종료시키고 다시 도커를 실행시키면 해결할 수 있다. 먼저 powershell을 관리자 권한으로 열고 다음 명령어로 해당 포트를 사용하고 있는 프로세스의 PID를 알아낸다. PS C:\WINDOWS\system32> netstat -ano | findstr :8443 TCP 0.0.0.0:8443 0.0.0.0:0 LISTENING 20692 TCP 127.0.0.1:63103 127.0.0.1:8443 TIME_WAIT 0 그 다음 20692에 해당하는 process를 종료시키면 된다. PS C:\WINDOWS\system32> taskkill /PID 20692 /F 성공: 프로세스(PID 20692)가 종료되었습니다.