pm2是一个进程管理工具,可以用它来管理你的node进程,并查看node进程的状态,同时也支持性能监控,进程守护,负载均衡等功能
安装:
需要全局安装 npm install -g pm2
常用指令:
pm2 start bin/www启动服务,在项目更目录运行pm2 list查看当前所有进程pm2 restart [id|name|all]根据id或者name重启进程(all代表所有进程)pm2 stop [id|name|all]根据id或者name停止进程(all代表所有进程)pm2 delete [id|name|all]根据id或者name删除进程(all代表所有进程)pm2 logs [id|name]根据id或者name查看日志pm2 monit打开管理面板
通过json配置pm2参数
在项目根目录中创建pm2.config.json文件
在package.json添加以下命令
"pro": "pm2 start pm2.config.json启动pm2并应用json当中的配置
"pro": "pm2 start pm2.config.json --env production追加参数,这里的production对应env.NODE_ENV
{
"apps": {
"name": "project name",//进程名字
"script": "bin/www",//启动文件,项目入口
"watch": true,//监听文件变化
"ignore_watch": [//不需要监听的文件目录
"node_modules",
"logs"
],
"env": {//这里配置环境参数
"NODE_ENV": "production",
"PORT": 3001,//这里可以指定端口,项目当中process.env.PORT可以访问到
"REMOTE_ADDR": "正式环境url"
},
"env_dev": {
"NODE_ENV": "development",
"REMOTE_ADDR": "开发环境url"
},
"env_test": {
"NODE_ENV": "test",
"REMOTE_ADDR": "测试环境url"
},
"instances": 4,//进程数
"error_file": "log/err.log",//错误日志路径
"out_file": "log/out.log",//日志路径
"log_date_format": "YYYY-MM-DD HH:mm:ss" //日志记录添加时间戳,格式自己定义
}
}