Pm2应用程序版本不可用



我有一个Express服务器,其package.json包含bin部分,用于创建运行应用程序的链接。

我想使用pm2运行服务器,并生成了如下生态系统文件:

module.exports = {
apps : [{
name: 'myServer',
script: 'myserver',
max_memory_restart: '500M',
env: {
NODE_ENV: 'development',
USER_CONFIG_FILE: '/etc/myserver/myserver-config.json'
},
env_production: {
NODE_ENV: 'production'
},
disable_logs: true
}]
};

生态系统文件在我的用户的主文件夹中(因为它将包含所有应用程序(,当我运行pm2 start时,服务器会正确启动,但应用程序表的version列显示N/A。

我还尝试将cwd字段添加到生态系统文件中,该字段设置为安装服务器的目录。

只有当我从服务器安装文件夹中运行pm2 start main.js时,pm2才能正确显示应用程序版本。

有什么方法可以告诉pm2在从任意文件夹启动时如何提取应用程序版本吗?

我找到了一个解决方法,避免使用通过bin部分创建的链接。我使用生态系统字段cwd指向包含package.json的文件夹,并用主脚本的名称设置script

module.exports = {
apps : [{
name: 'myServer',
cwd: '/path/to/app/',
script: 'index.js',
max_memory_restart: '500M',
env: {
NODE_ENV: 'development',
USER_CONFIG_FILE: '/etc/myserver/myserver-config.json'
},
env_production: {
NODE_ENV: 'production'
},
disable_logs: true
}]

};

最新更新