一、node项目启动(第一个项目)
- 最初在服务器中部署node项目时,为了永久启动node项目,使用了pm2方式,启动方式为pm2 start npm -- run start,停止方式为pm2 stop npm -- run start
- 当时看了下项目下的package.json文件里的配置,第一感觉是scripts中的键名是可以自定义命名的,比如改成"dolphin": "node ./bin/www",这样使用pm2 start npm -- run dolphin不能成功启动项目,如果两个项目中的scripts中都是start,使用pm2 start npm -- run start只能启动第一个端口为3000的项目
至于什么原因,现在还是没有弄明白,哪位大神看到知道的指导下,不胜感激!
二、多个项目同时启动
- 在根目录下增加processes.json文件,增加代码如下:
{
"apps": [
{
"name": "dolphin",
"script": "bin/www",
"log_date_format": "YYYY-MM-DD HH:mm:SS",
"log_file": "logs/dolphin.log",
"error_file": "logs/dolphin-err.log",
"out_file": "logs/dolphin-out.log",
"pid_file": "pids/dolphin.pid",
"instances": 1,
"min_uptime": "200s",
"max_restarts": 10,
"max_memory_restart": "1M",
"cron_restart": "1 0 * * *",
"watch": false,
"merge_logs": true,
"exec_interpreter": "node",
"exec_mode": "cluster_mode",
"autorestart": true,
"vizion": false
}
]
}
每个node项目下都添加processes.json文件,这样就可以启动多个项目了
-
启动方式
首先在服务器中进到node项目根目录下,执行pm2 start processes.json即可启动该node项目,需要停止时执行pm2 stop processes.json,操作命令如下:
三、线上环境调试
- 首先通过pm2 stop processes.json停调项目
-
进入到根目录下的bin目录下,执行node www即可临时启动项目可查看访问接口打印的数据,如下:
- 除了上面的这种方式,还可以通过postman软件来验证线上接口的正确性,如下需要console.log('打印数据')的话,可以选择上面的方法