1.在服务器上安装nodejs,下载路径:http://nodejs.cn/#download
2.安装pm2
npm install -g pm2
npm install -g pm2-web--pm2-web是可以用浏览器管理node进程的框架
3.开启进程
pm2 start -n management www.js--正常开启服务()以fork模式启动),不限制进程数据,anagement是当使用pm2 list命令查看进程时显示在Name中的名字,此参数可为空
pm2 start -n 工程师端服务 www.js -i num-- -i:指以cluster模式启动 --num:指的是CPU内核数,不能大于此数,可以为0即全部内核,但不能省略
或者
pm2 start -n management www.js -i max --max代表限制进程的数目
注:以上命令应进到www.js所在目录执行,否则就在www.js前添加其所在路径
4.管理进程
通过pm2 list命令查看已经运行的进程
5.其它命令
停止进程:pm2 stop management |id --management指的是显示在list中的Name--id指的是显示在list中的id,停止的进程还在list列表中存在
停止所有进程:pm2 stop all
重新启动进程:pm2 restart management |id
重新启动所有进程:pm2 restart all
杀死进程:pm2 delete management |id --从list列表中移除
杀死所有进程:pm2 kill
查看指定进程的详细信息:pm2 describe management |id
监视进程内存实时情况:pm2 monit
6.查看日志
查看指定进程日志:pm2 logs management |id
查看所有进程:pm2 logs
pm2 logs -json使用json格式查看日志
清空所有日志:pm2 flush
7.将pm2配置成自动启动
想要PM2在服务器重启后自动运行之前的应用,可以先通过pm2 start启动你的应用,然后执行下面的命令:pm2 save
这将会在~/.pm2目录下生成一个dump.pm2文件,里面描述了当前PM2上运行着的所有应用。然后执行命令:pm2 startup [platform]
注意有必要添加可选参数platform以明确告知pm2当前的系统环境。这样,下次当服务器重启时,PM2会自动运行之前保存的应用。
用法示例大全:
npm install pm2 -g # 命令行安装 pm2
pm2 start app.js -i 4 #后台运行pm2,启动4个app.js
# 也可以把'max' 参数传递给 start
# 正确的进程数目依赖于Cpu的核心数目
pm2 start app.js --name my-api # 命名进程
pm2 list # 显示所有进程状态
pm2 monit # 监视所有进程
pm2 logs # 显示所有进程日志
pm2 stop all # 停止所有进程
pm2 restart all # 重启所有进程 pm2 reload all # 0秒停机重载进程 (用于 NETWORKED 进程)
pm2 stop 0 # 停止指定的进程
pm2 restart 0 # 重启指定的进程
pm2 startup # 产生 init 脚本 保持进程活着
pm2 web # 运行健壮的 computer API endpoint (http://localhost:9615)
pm2 delete 0 # 杀死指定的进程
pm2 delete all # 杀死全部进程
运行进程的不同方式:
pm2 start app.js -i max # 根据有效CPU数目启动最大进程数目
pm2 start app.js -i 3 # 启动3个进程
pm2 start app.js -x #用fork模式启动 app.js 而不是使用 cluster
pm2 start app.js -x -- -a 23 # 用fork模式启动 app.js 并且传递参数 (-a 23)
pm2 start app.js --name serverone # 启动一个进程并把它命名为 serverone
pm2 stop serverone # 停止 serverone 进程
pm2 start app.json # 启动进程, 在 app.json里设置选项
pm2 start app.js -i max -- -a 23 #在--之后给 app.js 传递参数
pm2 start app.js -i max -e err.log -o out.log # 启动 并 生成一个配置文件
你也可以执行用其他语言编写的app ( fork 模式):
pm2 start my-bash-script.sh -x --interpreter bash
pm2 start my-python-script.py -x --interpreter python
更多问题,请看这里:http://pm2.keymetrics.io/docs/usage/quick-start/