Samsy
Samsy

Reputation: 375

MongoDB / Meteor / Export MONGO_URL to deployed applications

I tried to export a settings.json as documented in the meteor.js documentation in order to connect my Meteor.js app with an external MongoHQ database :

{
    "env": {
        "MONGO_URL" : "mongodb://xxx:[email protected]:10037/xxx"
    }
}

with the command :

mrt deploy myapp.meteor.com --settings settings.json

It doesn't even work, My app continue to connect the local database provided with the Meteor.app ! My MONGO_URL env variable didnt changed.

Is there any solution to export my MONGO_URL env variable to connect an external MongoDB database ?

I saw that is possible to change it while using heroku or modulus, what about the standard deploying meteor.com solution ?

Upvotes: 6

Views: 12029

Answers (5)

Mário
Mário

Reputation: 1612

Create a lib folder under the server folder and write:

Meteor.settings = { //your settings };

According to documentation everything inside a folder named lib will be executed before anything, so this way we ensure that no code will be execute before this, preventing errors from accessing Metrics that don't exist.

If you're already using the lib folder you've to named right to run before anything else that might conflict, check the docs about it.

Enjoy.

Upvotes: 2

cwohlman
cwohlman

Reputation: 773

The application-configuration package (built in meteor package) contains the code to set mongo_url. See my answer here https://stackoverflow.com/a/23485319/2391620

Upvotes: 1

pahan
pahan

Reputation: 2453

having a settings.json file is not enough you need to run with

 meteor --settings settings.json 

which is you cant do with meteor.com deploy.

Upvotes: 0

Samsy
Samsy

Reputation: 375

Regarded to the Unoficial Meteor.js FAQ, thats not possible to do it easily, that might be tricky.

So i signed up for a modulus Account, with MongoHQ Database. It works right now.

Upvotes: 0

Tarang
Tarang

Reputation: 75975

You are not able to use your own MONGO_URL with Meteor deploy hosting.

Meteor deploy hosting takes care of the Email with Mailgun (if you use it), and provides mongodb for all apps deployed there.

It is possible to change the MAIL_URL, but it is not possible to use a different mongodb.

You can try, though im not sure it will work:

Place this in your server side code somewhere

process.env.MONGO_URL = '..';

Upvotes: 3

Related Questions