【问题标题】:Issue with running node app using forever永远使用运行节点应用程序的问题
【发布时间】:2016-07-15 19:26:38
【问题描述】:

所以我有一个 node.js 应用程序,我在其中使用 node-config-manager 来管理各种环境(开发、登台、生产)。

我正在尝试使用 forever 在后台运行此进程,但是当我永远运行 start /path/to/main.js 时,它会告诉我

Error: No file for this config - app.

错误是说它来自第 9 行。当它第一次尝试添加配置文件时,app.json。

1.   import configManager from 'node-config-manager';
2.   const options = {
3.     configDir: './config',
4.     env: 'develop',
5.     camelCase: true
6.   };
7.   console.log(process.env.NODE_ENV);
8.   configManager.init(options);
9.   configManager.addConfig('app');
10.  configManager.addConfig('logger');
11.  configManager.addConfig('db');

export default configManager;

在我的 config 文件夹中,我还有另外三个文件夹,“develop”、“staging”和“production”。

在所有这些文件夹中,我有三个文件,app.json、db.json 和 logger.json。

所以我不确定是什么导致了这里的问题。配置“develop”确实存在,但似乎有问题。

当我用 nodemon 启动这个应用程序时,它运行良好,它只是永远导致问题。

我是否缺少对 node-config-manager 工作原理的理解?我想我所要做的就是将我的 NODE_ENV 变量更改为我的配置目录中的文件夹的名称,然后我就准备好了。

提前感谢所有帮助。

【问题讨论】:

    标签: node.js forever


    【解决方案1】:

    配置文件的./ 指令查看当前工作目录的相对路径。 forever 可能不是从项目的工作目录运行,所以它找不到文件。

    如果您的项目生活在/path/to,那么您需要将其作为--workdingDir 参数提供给forever。

    forever start /path/to/main.js --workingDir=/path/to/

    那应该照顾它

    【讨论】:

      猜你喜欢
      • 2015-09-14
      • 1970-01-01
      • 2018-04-07
      • 2014-12-14
      • 2016-12-22
      • 2018-08-12
      • 1970-01-01
      • 2016-03-18
      • 1970-01-01
      相关资源
      最近更新 更多