🏗️
サーバー起動エラー「EADDRINUSE: address already in use」解決方法
はじめに
こんにちは、Takeです。都内の自社開発企業でエンジニアとして働いています。
エラー内容
yarn dev
を実行した際、サーバーが起動しないエラーが発生しました。
$ yarn dev
yarn run v1.22.19
$ next dev -p 3000
⨯ Failed to start server
Error: listen EADDRINUSE: address already in use :::3000
at Server.setupListenHandle 〜
at listenInCluster 〜
{
code: 'EADDRINUSE',
errno: -48,
syscall: 'listen',
address: '::',
port: 3000
}
✨ Done in 1.29s.
このエラーメッセージは、指定されたポート(この場合は3000番)が既に使用されていることを示しています。
解決方法
以下の手順を実行しました。
1. 使用中のプロセスを確認
$ sudo lsof -i:3000
ポート番号3000を使用しているプロセスをリストとして表示します。
以下が出力例です。
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
node 12345 user 22u IPv6 0xabcde12345 0t0 TCP *:3000 (LISTEN)
2. 使用中のプロセスを修了する
次に確認したプロセスを終了するため以下のコマンドを実行しました。
<PID>は、実際のPIDに書き換えてください。上記例だとPID:12345
になります。
$ kill -9 <PID>
2. 再度サーバーを起動する
プロセスが正常に終了したことを確認したのち、再度サーバーを起動します。
yarn dev
以上でポート番号の競合問題を解決し、サーバーを正常に起動することができます。
参考
最後に
ここまで読んでいただきありがとうございました!
今回の記事が良かったと思ったらぜひ「いいね」を押していただけると嬉しいです 🎉
noteでも記事を執筆していますので、ぜひチェックしてみてください。
他にもこのようなことについて記載しているのでお読みいただければ幸いです。
最後までお読みいただき、誠にありがとうございました!
Discussion