我在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');
答案 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