2015-04-29 2 views
0

Im заинтересован в запуске приложения Admin Meteor и приложения Meteor Client против единой базы данных Mongo. Кто-нибудь сделал это и/или знает, как это сделать как на местном, так и на производстве? Как это можно настроить, я понимаю, что можно настроить MONGO_URL.2 Meteor Apps в одной базе данных

ответ

4

Вы можете установить глобальный MONGO_URL, чтобы указать на определенный запущенный экземпляр и БД, выполнив следующую команду в оболочке:

export MONGO_URL=mongodb://localhost:27017/your_db 

(Заменить localhost:27017 с любым хост/порт # - 27017 по умолчанию порт что Mongo работает на - и your_db с соответствующей базой данных). Это перезапишет стандартное метеоритное соединение. Вы можете увидеть больше об этом в this question и the documentation; Вы можете убедиться в том, что он работал так:

$ echo $MONGO_URL 
    mongodb://localhost:27017/your_db // response 

Вы также можете контролировать соединение для данной коллекции, используя connection option of Mongo.Collection(), но учтите, что это не будет работать с третьей стороной коллекций (например, те из пакетов, например, , сбор пользователей при использовании пакета учетных записей - см. this question, почему это не работает).

Как для местного производства, так и для использования в режиме MongoDB (instructions in MongoDB's docs). Вы можете сделать это локально, используя MONGO_URL, но выполнение этого процесса будет зависеть от вашей производственной настройки - если у вас есть доступ к CLI, вы можете следовать указаниям, приведенным выше, из документов Meteor.

Как только вы настроите переменную окружения, это будет простой вопрос развертывания обоих приложений. Вы можете узнать больше об этом с this Quora thread, но короткий ответ заключается в том, что вы можете либо развернуть их на разные субдомены, управляя IP-адресами, либо развертывая их в разные порты, настроив переменную env PORT, как в приведенной выше документации:

env PORT=3000 MONGO_URL=mongodb://localhost:27017/myapp node main.js 
+0

Спасибо за ваш четкий ответ. Работает хорошо. – user898100

Смежные вопросы