如何设置NODE_PATH =。 for openshift中托管的node.js应用程序

时间:2016-06-12 15:07:59

标签: node.js environment-variables openshift

我在openshift上使用自定义node.js盒式磁带 icflorescu/openshift-cartridge-nodejs

如何设置NODE_PATH =。 for app在package.json中启动?我应该在package.json中提供它:"start": "NODE_PATH=. NODE_ENV=production node app.js", 或者我应该使用像这里的东西 Dindaleon/hapi-react-starter-kit - 某些npm包,例如cross-env

我在主app.js文件中有一行。有一个名为' config'的文件夹,在与app.js相同的目录中,在文件夹配置文件index.js中,文件index.js的代码为' module.exports = Object.assign( {...一些conifg对象......});' 。当我删除NODE_PATH =。 ,节点抛出"错误:找不到模块' config' " 。

var config = require('config');

1 个答案:

答案 0 :(得分:0)

我是openshift-cartridge-nodejs的作者: - )

"start": "node app.js"中使用package.json就足够了。

如果您查看bin/install,您会在默认情况下在磁带设置脚本中看到NODE_ENV已设置为production

另外,我通过将NODE_PATH设置为.来确定您要实现的目标。已经安装了一个Node.js版本。

如果您对如何在OpenShift部署的应用程序中设置自定义环境变量感兴趣,请查看文档here。基本上,您必须使用rhc命令行实用程序,如下所示:

$ rhc env set <Variable>=<Value> <Variable2>=<Value2> -a App_Name