2013-01-14 6 views
11

Chciałbym użyć mojej własnej bazy danych MongoHQ do wykorzystania przy wdrażaniu aplikacji Meteor z użyciem meteor deploy. The documentation explains how to do this when deploying and running on a machine I control:Jak określić bazę danych MongoHQ podczas wdrażania aplikacji Meteor?

$ PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp node bundle/main.js 

ale dokumentacja wydaje się nieco skąpe, w jaki sposób to zrobić z meteor deploy. Czy to możliwe?

EDIT: Próbowałem następujących http://docs.meteor.com/#meteor_settings i dodaje plik settings.json i umieścić w nim:

{"MONGO_URL" : "mongodb://user:[email protected]:10000/mydatabase"} 

następnie wdrożony z

meteor deploy myappname.meteor.com --settings settings.json

ale wersja rozmieszczone nie postrzegane korzystać z mojej bazy danych

+0

Musisz zdecydować, gdzie będzie działał serwer WWW dla meteorytów. MongoHQ może tylko pełnić rolę serwera DB. Podejrzewam, że pakowacz wdrażania nie zawiera MONGO_URL, więc wdrożenie do infrastruktury Meteor nie będzie korzystać z bazy danych MongoHQ. Ale powinieneś zdecydowanie zapytać deweloperów Meteorów i poprosić o nie. – mjhm

+0

Chcę wdrożyć go z "meteor deploy", które moim zdaniem wdraża na ich serwer. Ale chciałbym użyć mojego własnego wystąpienia MongoHQ zamiast domyślnego. – nickponline

+0

Dodałem plik settings.json i umieściłem go: {"MONGO_URL": "mongodb: // user: [email protected]: 10000/mydatabase"} następnie wdrożone z meteor 'wdrożyć myappname.meteor.com - ustawienia settings.json', ale wdrożona wersja nie używa mojej bazy danych. – nickponline

Odpowiedz

3

Skończyłem wdrażanie do Heroku zamiast za pomocą buildpack. Wtedy mógłbym ustawić zmienne za pomocą konfiguracji heroku.

2

Szybkie skanowanie kodu kodu ujawnia tę linię w pliku remote_collection_driver.js:

Meteor._RemoteCollectionDriver = new Meteor._RemoteCollectionDriver (process.env.MONGO_URL);

Jestem pewien, że jeśli zhakowałeś to, by wskazać, gdzie chciałeś, to by działało. Jeśli to zbyt dużo (jeśli na przykład planujesz aktualizować wersje Meteor), możesz poeksperymentować z próbą zmiany Meteor._RemoteCollectionDriver lub process.env.MONGO_URL odpowiednio wcześnie, z własnego kodu (bez włamań do Meteora js bezpośrednio). Powodzenia.