怎么利用配置文件來(lái)管理多個(gè) Node.js 進(jìn)程?本篇文章給大家介紹一下PM2用配置文件管理多個(gè)Node項(xiàng)目的方法,希望對(duì)大家有所幫助!
一、問(wèn)題簡(jiǎn)介
有多個(gè) Node.js 進(jìn)程需要一起管理時(shí),各自需要的參數(shù)也不同時(shí),創(chuàng)建一個(gè)配置文件來(lái)管理是最好的方案。
二、解決方案
1、生成基礎(chǔ)版本配置文件
pm2 init simple
:可以生成基礎(chǔ)版本的配置文件:ecosystem.config.js
// ecosystem.config.js module.exports = { apps: [{ name: "app1", script: "./app.js" }] }
2、生成復(fù)雜版本的配置文件
pm2 init 等同于 pm2 ecosystem
,可以生成帶有 deploy 屬性的配置文件:ecosystem.config.js
module.exports = { apps: [{ script: 'index.js', watch: '.' }, { script: './service-worker/', watch: ['./service-worker'] }], deploy: { production: { user: 'SSH_USERNAME', host: 'SSH_HOSTMACHINE', ref: 'origin/master', repo: 'GIT_REPOSITORY', path: 'DESTINATION_PATH', 'pre-deploy-local': '', 'post-deploy': 'npm install && pm2 reload ecosystem.config.js --env production', 'pre-setup': '' } } };
此版本配置適合遠(yuǎn)程配置服務(wù)器使用,實(shí)例查看這里!
https://learn-anything.cn/pm2-nodejs-deploy
3、使用配置文件
啟動(dòng)、停止、重啟、重載、刪除配置文件中所有項(xiàng)目
pm2 start ecosystem.config.js pm2 stop ecosystem.config.js pm2 restart ecosystem.config.js pm2 reload ecosystem.config.js pm2 delete ecosystem.config.js
啟動(dòng)指定應(yīng)用
pm2 start ecosystem.config.js --only api-app pm2 start ecosystem.config.js --only "api-app,worker-app"