我的Heroku评论应用程序找不到MONGODB_URI
环境变量,我希望它根据the documentation由mLab插件自动提供。我的应用程序有一个app.json
,它指定mongolab
作为附加组件,并且是Node应用程序,因此我尝试通过process.env.MONGODB_URI
访问变量,但它是undefined
。>
我尝试运行heroku addons:open mongolab -a my-app-pr-17
来查看配置的数据库,但收到消息“找不到附加组件” 。
Heroku仪表板中评论应用程序的资源选项卡显示消息“此应用程序没有附加组件” 。
运行heroku config -a my-app-pr-17
显示一个空列表。
这是我的app.json
文件。
{
"name": "my-app",
"addons": [
"mongolab"
],
"buildpacks": [
{
"url": "heroku/nodejs"
}
]
}
我希望在我的节点代码process.env.MONGODB_URI
中是一个具有the documentation中所述的用户名和密码的URI。
答案 0 :(得分:0)
问题在于 app.json
仅在首次创建评论应用时读取。在同一评论应用程序的后续部署中,将不接受对app.json
文件的更新。
就我而言,我已连接GitHub,打开了一个请求请求,该请求创建了一个评论应用程序,然后进一步推送了提交内容以更新app.json
并添加 mongolab 附加组件。当这些进一步的提交没有为我创建插件时,我感到困惑,但是Heroku在应用程序的整个生命周期中都没有同步更改。
创建一个新的PR会创建一个新的评论应用程序,该应用程序具有我期望的自动配置的mongolab插件。我将插件手动添加到现有的审阅应用程序中,以继续使用它。