如何在Meteor应用程序中设置MONGO_URL?
我试过
process.env.MONGO_URL = '...'
在我的服务器端代码中,在Meteor.startup之外,但是没有用。
我正在使用demeteorizer将其捆绑到node.js应用程序中。我无法直接在终端设置MONGO_URL(我在第三方提供商处运行我的应用程序)。
答案 0 :(得分:2)
来自Meteorpedia: Environment Variables.
设置环境变量的值
最安全的时间,保证任何变量的行为 是在METEOR STARTS之前。 这通常是通过你的 PaaS提供商的应用程序控制面板,或者在shell脚本中 启动Meteor,例如
重要:您也可以在Meteor中设置/更改环境变量,但需要在使用之前进行设置。例如现在为时已晚 加载Meteor后设置MONGO_URL ,但MAIL_URL正常 你会在发送任何邮件之前设置它。
答案 1 :(得分:2)
您可以覆盖默认的收集驱动程序
MongoInternals.defaultRemoteCollectionDriver = _.once(function () {
return new MongoInternals.RemoteCollectionDriver(Meteor.settings.MONGO_URL, {
oplogUrl: Meteor.settings.MONGO_OPLOG_URL
});
});
或按集合手动设置
var database = new MongoInternals.RemoteCollectionDriver(Meteor.settings.MONGO_URL, {
oplogUrl: Meteor.settings.MONGO_OPLOG_URL
});
somecollection = new Mongo.Collection('somecollection', {_driver: database});