javascript - MongoDB/Meteor/将 MONGO_URL 导出到已部署的应用程序
我尝试按照 Meteor.js 文档中记录的方法导出 settings.json,以便将我的 Meteor.js 应用程序与外部 MongoHQ 数据库连接:
{
"env": {
"MONGO_URL" : "mongodb://xxx:[email :10037/xxx"
}
}
使用命令:
mrt deploy myapp.meteor.com --settings settings.json
它甚至都不工作,我的应用程序仍然连接着 Meteor.app 提供的本地数据库!我的 MONGO_URL 环境变量没有更改。
有没有办法导出我的 MONGO_URL 环境变量以连接外部 MongoDB 数据库?
我看到在使用 Heroku 或 Modulus 时可以更改它,那么标准的在 meteor.com 部署的解决方案呢?
答案#1
你无法在 Meteor 部署托管中使用你自己的 MONGO_URL。
Meteor 部署托管会处理使用 Mailgun 的电子邮件(如果你使用它的话),并为那里部署的所有应用提供 MongoDB。
可以更改 MAIL_URL,但不可能使用不同的 mongodb。
你可以尝试,尽管我不确定它是否能奏效:
将此放在你的服务器端代码的某个地方
process.env.MONGO_URL = '..';
答案#2
在 server 文件夹下创建一个 lib 文件夹并编写:
Meteor.settings = { //your settings };
根据文档,位于名为 lib 的文件夹中的所有内容都会在其他任何内容之前执行,因此我们可以确保在此之前不会执行任何代码,从而防止访问不存在的 Metrics 时出现错误。
如果你已经在使用 lib 文件夹,你必须正确命名它以在任何可能冲突的东西之前运行,查看相关文档。
享受吧。
