尝试使用 pm2 启动我的项目时出现 EADDRINUSE 错误

I get an EADDRINUSE error when trying to start my project with pm2

在我的项目中 运行 'pm2 start project.json' 时出现以下错误。

port: 3000 }
0|serv | Tue, 08 Sep 2020 03:14:18 GMT app LoadSettingFromRedis: loaded
0|serv | { Error: listen EADDRINUSE 127.0.0.1:3000
0|serv |     at Server.setupListenHandle [as _listen2] (net.js:1360:14)
0|serv |     at listenInCluster (net.js:1401:12)
0|serv |     at doListen (net.js:1510:7)
0|serv |     at _combinedTickCallback (internal/process/next_tick.js:142:11)
0|serv |     at process._tickCallback (internal/process/next_tick.js:181:9)
0|serv |   errno: 'EADDRINUSE',
0|serv |   code: 'EADDRINUSE',
0|serv |   syscall: 'listen',
0|serv |   address: '127.0.0.1',
0|serv |   port: 3000 }
0|serv | Tue, 08 Sep 2020 03:15:08 GMT app LoadSettingFromRedis: loaded
0|serv | Tue, 08 Sep 2020 03:20:43 GMT app LoadSettingFromRedis: loaded

当我检查什么进程正在侦听端口 3000 时,我得到了 node.我杀了这个进程,但它仍然没有解决问题。有谁知道这里的问题是什么?

这意味着您的端口已被使用。尝试使用以下命令终止端口

sudo kill -9 $(sudo lsof -t -i:3000)

如果不行,请尝试以下

sudo lsof -i tcp:3000   // this will return some PIDs 
sudo kill -9 [your pid to remove]

然后运行pm2 start再次命令