I was running into an issue running my React app locally where the default port was previously used and unreleased.
❯ yarn dev
yarn run v1.22.10
Port 3000 is already in use.
You may also see a similar EADDRINUSE
error if a node processes is trying to use an occupied port:
Error: listen EADDRINUSE: address already in use :::3000
Solution
We can find and kill the process running on port tcp:3000
with the command:
(I am running macOS Big Sur 11.4).
$ lsof -t -i tcp:3000 | xargs kill
lsof
: List open files-t
: Terse output with process identifiers only (output can be piped)i
: Selects the listing of files where the address matchestcp:3000
: The address at TCP port 3000|
: Pipe the output on the left to the command on the rightxargs
: Build and execute lineskill
: Kill a process by PID