๋ชฉ์ฐจ
linux killall node command use in windows taskkill /f /im node.exe Starting inspector on 127.0.0.1:9229 failed: address already in use
Windows ํ๊ฒฝ์์ VSCode ์ฌ์ฉ ์ ๋ฐ์ํ๋ "address already in use" ์๋ฌ ํด๊ฒฐ ๋ฐฉ๋ฒ
์ค๋์ Windows ํ๊ฒฝ์์ VSCode๋ฅผ ์ฌ์ฉํ๋ฉด์ ์์ฃผ ๋ง์ฃผ์น๊ฒ ๋๋ "address already in use" ์๋ฌ์ ๋ํ ํด๊ฒฐ ๋ฐฉ๋ฒ์ ์ดํด๋ณด๊ฒ ์ต๋๋ค. ์ด ์ค๋ฅ๋ ์ข ์ข 127.0.0.1:9229์ ๊ฐ์ ์ฃผ์์์ ๋ฐ์ํ๋๋ฐ, ์ด๋ฅผ ํด๊ฒฐํ๊ธฐ ์ํด ๋ช ๊ฐ์ง ๋จ๊ณ๋ฅผ ๋ฐ๋ผ๊ฐ๋ณด๊ฒ ์ต๋๋ค.
ํด๊ฒฐ ๋ฐฉ๋ฒ: taskkill ๋ช ๋ น์ด ์ฌ์ฉ
์ ๋์ค ๊ณ์ด ์์คํ
์์๋ killall node
๋ช
๋ น์ด๋ก ์ด ๋ฌธ์ ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ํ์ง๋ง Windows ํ๊ฒฝ์์๋ ํด๋น ๋ช
๋ น์ด ๋์ taskkill
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํด์ผ ํฉ๋๋ค. ๋ค๋ง ๊ฐ๋จํ taskkill
๋ช
๋ น์ด๋ง ์ฌ์ฉํด์๋ ์ํํ ์ข
๋ฃ๊ฐ ์ด๋ค์ง์ง ์์ ์ ์์ต๋๋ค. ๊ทธ๋์ /f
์ต์
์ ํจ๊ป ์ฌ์ฉํ์ฌ ๊ฐ์ ์ข
๋ฃํด์ผ ํฉ๋๋ค.
๋จ๊ณ 1: Taskkill ๋ช ๋ น์ด ์ฌ์ฉ
taskkill /im node.exe
๋ง์ฝ ํ๋ก์ธ์ค๊ฐ ์ฌ์ ํ ์ข
๋ฃ๋์ง ์๋๋ค๋ฉด, /f
์ต์
์ ์ถ๊ฐํ์ฌ ๊ฐ์ ์ข
๋ฃํฉ๋๋ค.
๋จ๊ณ 2: ๊ฐ์ ์ข ๋ฃ
taskkill /f /im node.exe
Stack Overflow์์ ์ฐพ์ ์ ์ฉํ ์ ๋ณด
์ ์ฉํ Stack Overflow ๊ธ์์ ๋ฐ๊ฒฌํ ์ ๋ณด๋ฅผ ๊ณต์ ํ๋ฉด ๋ค์๊ณผ ๊ฐ์ต๋๋ค.
"address already in use" ์ค๋ฅ๊ฐ ๋ฐ์ํ ๊ฒฝ์ฐ, ์ปดํจํฐ์ ๋ค๋ฅธ Node ํ๋ก์ธ์ค๊ฐ ์คํ ์ค์ด์ง ์์ ๊ฒฝ์ฐ์๋
taskkill /im node.exe
๋ช ๋ น์ด๋ก ๋ชจ๋ node.exe ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ ์ ์์ต๋๋ค. ๊ทธ๋ผ์๋ ๋ถ๊ตฌํ๊ณ ํ๋ก์ธ์ค๊ฐ ๊ณ์ํด์ ๋จ์์๋ ๊ฒฝ์ฐ,/f
ํ๋๊ทธ๋ฅผ ์ถ๊ฐํ์ฌ ํ๋ก์ธ์ค๋ฅผ ๊ฐ์ ์ข ๋ฃํ ์ ์์ต๋๋ค.
ํฌํธ ๊ธฐ๋ฐ์ผ๋ก ํ๋ก์ธ์ค ์ข ๋ฃํ๊ธฐ
ํน์ ํฌํธ์์ ์คํ ์ค์ธ ์๋ฒ๋ง ์ข
๋ฃํ๊ณ ์ถ๋ค๋ฉด, ํฌํธ๋ฅผ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค์ ID๋ฅผ ์์์ผ ํฉ๋๋ค. ์ด๋ฅผ ์ํด netstat
๋ช
๋ น์ด๋ฅผ ์ฌ์ฉํ์ฌ ํด๋น ํฌํธ๋ฅผ ์ฌ์ฉํ๋ ํ๋ก์ธ์ค์ ID๋ฅผ ์ฐพ์ ์ ์์ต๋๋ค.
๋จ๊ณ 1: ํ๋ก์ธ์ค ID ์ฐพ๊ธฐ
netstat -ano | find "LISTENING" | find "8080"
์ ๋ช ๋ น์ด๋ฅผ ์คํํ๋ฉด ์ถ๋ ฅ ์ค ๋ค์ฏ ๋ฒ์งธ ์ด์ ํ๋ก์ธ์ค ID๊ฐ ๋ํ๋ฉ๋๋ค. ์ด ID๋ฅผ ์ฌ์ฉํ์ฌ ํ๋ก์ธ์ค๋ฅผ ์ข ๋ฃํ ์ ์์ต๋๋ค.
๋จ๊ณ 2: ํ๋ก์ธ์ค ๊ฐ์ ์ข ๋ฃ
taskkill /f /pid ํ๋ก์ธ์ค_ID
๋ง์ฝ ํ๋ก์ธ์ค๊ฐ ์ฌ์ ํ ์ข
๋ฃ๋์ง ์๋๋ค๋ฉด, -9
ํ๋๊ทธ๋ฅผ ์ฌ์ฉํ์ฌ ๊ฐ์ ๋ก ์ข
๋ฃํ ์ ์์ต๋๋ค.
Windows Machine:
Need to kill a Node.js server, and you don't have any other Node processes running, you can tell your machine to kill all processes named node.exe. That would look like this:
taskkill /im node.exe
And if the processes still persist, you can force the processes to terminate by adding the /f flag:
taskkill /f /im node.exe
If you need more fine-grained control and need to only kill a server that is running on a specific port, you can use netstat to find the process ID, then send a kill signal to it. So in your case, where the port is 8080, you could run the following:
C:\>netstat -ano | find "LISTENING" | find "8080"
The fifth column of the output is the process ID:
TCP 0.0.0.0:8080 0.0.0.0:0 LISTENING 14828 TCP [::]:8080 [::]:0 LISTENING 14828
You could then kill the process with taskkill /pid 14828. If the process refuses to exit, then just add the /f (force) parameter to the command.
Linux machine:
The process is almost identical. You could either kill all Node processes running on the machine (use -$SIGNAL if SIGKILL is insufficient):
killall node
Or also using netstat, you can find the PID of a process listening on a port:
$ netstat -nlp | grep :8080 tcp 0 0 0.0.0.0:8080 0.0.0.0:* LISTEN 1073/node
The process ID in this case is the number before the process name in the sixth column, which you could then pass to the kill command:
$ kill 1073
If the process refuses to exit, then just use the -9 flag, which is a SIGTERM and cannot be ignored:
$ kill -9 1073
๊ฒฐ๋ก
Windows ํ๊ฒฝ์์ VSCode๋ฅผ ์ฌ์ฉํ๋ฉด์ "address already in use" ์ค๋ฅ๊ฐ ๋ฐ์ํ๋ค๋ฉด, taskkill
๋ช
๋ น์ด์ ๊ทธ ์ต์
๋ค์ ์ ์ ํ ์ฌ์ฉํ์ฌ ์ค๋ฅ๋ฅผ ํด๊ฒฐํ ์ ์์ต๋๋ค. ์์์ ์๊ฐํ ๋ฐฉ๋ฒ์ ๋ฐ๋ผ ํ๋์ฉ ์๋ํด๋ณด์ธ์. ๊ทธ๋ฆฌ๊ณ ํญ์ ๊ฐ์ ์ข
๋ฃ๋ฅผ ์๋ํ๊ธฐ ์ ์ ๋ค๋ฅธ ํด๊ฒฐ ๋ฐฉ๋ฒ๋ค์ ๋จผ์ ๊ณ ๋ คํด๋ณด๋ ๊ฒ์ด ์ข์ต๋๋ค.
๊ด๋ จ ๋งํฌ
๊ด๋ จ ํค์๋
Node.js, VSCode, address already in use, taskkill, ํ๋ก์ธ์ค ์ข ๋ฃ, ํฌํธ ๊ด๋ฆฌ
์ฐธ๊ณ : ์์ ๋ด์ฉ์ Windows ํ๊ฒฝ์์ "address already in use" ์ค๋ฅ๋ฅผ ํด๊ฒฐํ๋ ๋ฐฉ๋ฒ์ ์ค๋ช ํ ๊ฒ์ ๋๋ค. ์ฃผ์๊น๊ฒ ์ฝ์ด๋ณด์๊ณ ์ ์ ํ ๋ฐฉ๋ฒ์ ์ ํํด ์ค๋ฅ๋ฅผ ํด๊ฒฐํ์๊ธธ ๋ฐ๋๋๋ค.
๋๊ธ