我试着在linux上用pm2起服务,但总是失败,但是不报错,请问是什么问题啊?
发布于 10 年前 作者 hwoarangzk 16945 次浏览 最后一次编辑是 8 年前 来自 问答

首先npm install -g pm2,一切正常

然后切到我的服务的目录,运行pm2 start app.js,然后控制台就输出一句[PM2] Spawning PM2 daemon,然后就又回到命令行了,服务没有启动起来。接着我试了下pm2 list, pm2 -h,控制台全都是输出一句[PM2] Spawning PM2 daemon,然后就没有然后了。我用ps aux|grep appps aux|grep pm2,看不到pm2或者我的服务运行在进程中。请问是怎么回事啊?

19 回复

你先用 node 命令启动看看,有爆什么错误么

pm2 logs 看一下错误

node启动没有问题 运行pm2 logs,控制台也报一句[PM2] Spawning PM2 daemon,继续没有然后了

我怀疑是pm2配置啥的有问题?我就安装好后,啥都没动,直接用来运行,就出现上面的情况了

别闹,这是磁盘空间不足。。。。。。我线上遇到过的。pm2运行时会产生日志,如果磁盘空间不足,会出现这个情况。

或许你该试试pm2 start ./bin/www

呃,可是我当时的磁盘空间应该是远远足够的。。。

@hpgt 好,我试试,多谢

好奇怪。我印象中 PM2 装了就直接能用的。只要 node 命令可以直接启动起来,那么 PM2 就能直接启动起来。

我换成forever倒是能正常使用,pm2就不行 搜了下so,貌似跟linux的不同用户有关系,有人遇到过类似的问题吗?

root 用户 kill pm2、 node , 然后重启一下试试 , 之前生成遇到过 类似问题

多谢!我稍后试试!

pm2是全局安装,要获取root权限。再就是启动的时候要从listen(port)文件启动

@hpgt +1,linux下全局安装用sudo

node版本如果升级过 可能要重新安装pm2,我之前升级的时候就是这个情况 自豪地采用 CNodeJS ionic

多谢大家,刚才试了下,莫名其妙地又好了。。。

node版本跟pm2不匹配,换一下node版本,就好了

回到顶部