Node.js起動時に発生する「Error: listen EADDRINUSE 0.0.0.0:8080」の対処方法
前のプロセスが正常終了してないのか?
daab run でNode.js起動時によく例外で落ちるようになった。
すぐに回復して再起動すんだけどw(ΦωΦ)
メッセージでlisten ... って言ってるので既にオマエの指定した
Port番号は使われてるぞ!ってエラーだったw
というか、Node.jsもPortは80を使ってんのかw
Genieの内部サーバーと同じかw(ΦωΦ)
ちゃんとdaab logoutするか、プロセスを確認して不要なものが
起動してたらKillして再起動したらいいみたい。
[対処手順]
1. rootでログインして、nodeのプロセス一覧を表示。
# ps aux | grep node
user 17147 0.0 1.5 1198796 29344 ? Ssl May09 0:22 /home/username/.nvm/versions/node/v6.9.2/bin/node /home/username/test_bot/node_modules/lisb-forever/bin/monitor node_modules/.bin/hubot
username 30016 0.6 2.8 1249368 54368 ? Sl 09:57 0:05 node node_modules/.bin/coffee /home/username/test_bot/node_modules/.bin/hubot -a direct
root 30156 0.0 0.0 107468 924 pts/4 S+ 10:11 0:00 grep node
2. 前に起動したnodeプロセスが生きていたら、殺す。
# kill -9 17147
# kill -9 30016
3. ちゃんと死んだか確認。
# ps aux | grep node
user 30016 0.4 2.8 1250392 54872 ? Sl 09:57 0:05 node node_modules/.bin/coffee /home/username/test_bot/node_modules/.bin/hubot -a direct
root 30174 5.0 0.0 107464 924 pts/4 S+ 10:20 0:00 grep node# ps aux | grep node
root 30176 0.0 0.0 107464 920 pts/4 S+ 10:20 0:00 grep node
4. 再起動。
[別解]
1. Port番号を80番から別の番号に変更。
2. 再起動。
※それでもダメなら考えよう。
他にもエラーが発生してるのでそっちも見なくちゃだw(ΦωΦ)
そもそも、hubotのプロセスが生きてたのはコマンドの確認で
むやみに、./bin/hubot を実行していて、それが死んでなかった
からだったwww(ΦωΦ)
[参考サイト]