linux npm start 保持后台运行

一、方法1:nohup

which nohup
.bash_profile中并source加载

如果没有就安装吧
yum provides */nohup

nohup npm start &

原程序的的标准输出被自动改向到当前目录下的nohup.out文件,起到了log的作用。

停止程序:

ps -ef | grep npm
ps -ef | grep node
kill -9 1067

二、方法2:pm2

  • 内建负载均衡(使用 Node cluster 集群模块)
  • 后台运行
  • 0 秒停机重载,我理解大概意思是维护升级的时候不需要停机。
  • 具有 Ubuntu 和 CentOS 的启动脚本
  • 停止不稳定的进程(避免无限循环)
  • 控制台检测
  • 提供 HTTP API
  • 远程控制和实时的接口 API ( Nodejs 模块,允许和 PM2 进程管理器交互 )
  • pm2官网 http://pm2.keymetrics.io/

1、安装

cnpm install pm2 -g 

#查看安装是否成功   
pm2 list

2、启动项目

#pm2启动:
pm2 start "/opt/node-v10.15.3-linux-x64/bin/npm" --name "mytest" -- start .
# /opt/node-v10.15.3-linux-x64/bin/npm 安装路径(which npm 查看)

pm2 list
pm2 stop    
pm2 restart 
pm2 delete  

3、pm2 常用命令

 pm2 start app.js # 启动app.js应用程序
 pm2 start app.js –name=”api” # 启动应用程序并命名为 “api”
 pm2 start app.js –watch # 当文件变化时自动重启应用
 pm2 start script.sh # 启动 bash 脚本
 
 pm2 list # 列表 PM2 启动的所有的应用程序
 
 pm2 monit # 显示每个应用程序的CPU和内存占用情况
 
 pm2 show [app-name] # 显示应用程序的所有信息
 
 pm2 logs # 显示所有应用程序的日志
 
 pm2 logs [app-name] # 显示指定应用程序的日志
 pm2 stop all # 停止所有的应用程序
 
 pm2 stop 0 # 停止 id为 0的指定应用程序
 
 pm2 restart all # 重启所有应用
 
 pm2 reload all # 重启 cluster mode下的所有应用
 
 pm2 gracefulReload all # Graceful reload all apps in cluster mode
 
 pm2 delete all # 关闭并删除所有应用
 
 pm2 delete 0 # 删除指定应用 id 0
 
 pm2 scale api 10 # 把名字叫api的应用扩展到10个实例
 
 pm2 reset [app-name] # 重置重启数量
 
 pm2 startup # 创建开机自启动命令
 
 pm2 save # 保存当前应用列表
 
 pm2 resurrect # 重新加载保存的应用列表
 
 pm2 update # Save processes, kill PM2 and restore processes
 
 pm2 generate # Generate a sample json configuration file

  • 1
    点赞
  • 7
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值