pm2部署node项目
安装:
npm install pm2 -g
更新:
pm2 update
pm2命令:
启动express项目命令:
pm2 start ./bin/www
打印日志:
pm2 logs
实时更新代码,不重启服务器,类似于热更新:watch起的作用(pm2 delete **.json && pm2 start **.json --env local)
灵活启动对应文件,加载对应环境代码(一)
{
"apps": [{
"name": "电子签约",
"script": "./bin/www",
"cwd": "./",
"watch": [
"bin",
"lib",
"public",
"routes",
"views"
],
"log_date_format": "YYYY-MM-DD HH:mm Z",
"error_file":"/data/logs/electronic-err.log",
"out_file":"/data/logs/electronic-out.log",
"env": {
"NODE_ENV": "preview"
}
}]
}
//env里面可以配置自己想要的变量,例如:接口IP等
NODE_ENV这块可以根据json文件的不同设定不同的参数,例如test、preview等
启动命令:pm2 start processes.json 对应相应的json文件
通过命令启动对应环境,环境变量:
启动命令:pm2 start ****.json --env local
{
"apps": [{
"name": "electronic",
"script": "./bin/www",
"cwd": "./",
"watch": [
"bin",
"lib",
"public",
"routes",
"views"
],
"log_date_format": "YYYY-MM-DD HH:mm Z",
"error_file": "/data/logs/electronic-err.log",
"out_file": "/data/logs/electronic-out.log",
"env_local": {
"NODE_ENV": "local"
},
"env_test": {
"NODE_ENV": "test"
},
"env_preview": {
"NODE_ENV": "preview"
},
"env_product": {
"NODE_ENV": "product"
}
}]
}