Joh*_*eri 7 node.js express pm2
我正在开发一个ExpressJS应用程序.我用pm2加载它:
myapp$ pm2 start bin/www
Run Code Online (Sandbox Code Playgroud)
这很好,除了添加--watch标志似乎不起作用; 每次我更改JS源代码时,我都需要显式重新启动它才能使更改生效:
myapp$ pm2 restart www
Run Code Online (Sandbox Code Playgroud)
我究竟做错了什么?我已尝试--watch使用非ExpressJS应用程序的标志,它按预期工作.
2021 年 2 月
现在情况发生了一些变化。下面给出了我的项目的完整示例。下面的作品:
1. 创建配置文件。文件:ecosystem.config.js
module.exports = {
apps: [
{
name: 'api',
script: './bin/www', // --------------- our node start script here like index.js
// ------------------------------------ watch options - begin
watch: ['../'],
watch_delay: 1000,
ignore_watch: ['node_modules'],
watch_options: {
followSymlinks: false,
},
// ------------------------------------ watch options - end
env: {
NODE_ENV: 'development',
PORT: 3001,
DEBUG: 'api:*',
MONGODB_URI:
'mongodb://localhost:27017/collection1?readPreference=primary&ssl=false',
},
env_production: {
NODE_ENV: 'production',
},
},
],
deploy: {
production: {
// user: "SSH_USERNAME",
// host: "SSH_HOSTMACHINE",
},
},
};
Run Code Online (Sandbox Code Playgroud)
2. 运行服务器(开发/产品)
pm2 start ecosystem.config.js
pm2 start ecosystem.config.js --env production
Run Code Online (Sandbox Code Playgroud)
3. 更多信息 :
https://pm2.keymetrics.io/docs/usage/watch-and-restart/
| 归档时间: |
|
| 查看次数: |
14270 次 |
| 最近记录: |