【发布时间】:2015-02-12 22:38:06
【问题描述】:
我正在尝试将应用程序原型部署到 openshift。它在本地与 127.0.0.1 的 mongodb 一起工作。我试图让它在 openshift 环境中尊重process.env.OPENSHIFT_MONGODB_DB_URL,但我的 nodejs 墨盒在运行时无法访问该变量。
我可以看到它是在我的应用程序的 shell 环境中设置的。当我执行rhc ssh 和export 时,我看到了OPENSHIFT_MONGODB_DB_URL=[full_url_with_password],一切看起来都不错。
但是,当我在我的 node.js 应用程序中调用 process.env.OPENSHIFT_MONGODB_DB_URL 时,它会返回 undefined。
为了仔细检查,我在我的 node.js 应用程序中执行了console.log(util.inspect(process.env)),我看到的与我在应用程序的安全外壳中看到的不同。在暴露给我的 node.js 应用程序的环境中没有 OPENSHIFT_MONGODB_* 变量。
如何访问不同墨盒的变量?还是这是配置错误?
【问题讨论】:
-
看来是墨盒的启动顺序有问题?在应用程序/墨盒的一些停止和启动后,问题就消失了。
标签: node.js mongodb environment-variables openshift openshift-cartridge