Проблемы с MongoDB при попытке развернуть приложение Meteor

Я настроил сервер на дроплете Digital Ocean, чтобы разместить пару приложений Meteor. Я делаю все с нуля, чтобы научиться как можно большему. Я пытаюсь использовать «Meteor-Up» (mup) для развертывания приложения, но у него возникают проблемы со связью с MongoDB. Когда я запускаю «mup setup», я получаю следующую ошибку:

Started TaskList: Setup (linux)
[Gibson] - Installing Docker
[Gibson] - Installing Docker: SUCCESS
[Gibson] - Setting up Environment
[Gibson] - Setting up Environment: SUCCESS
[Gibson] - Copying MongoDB configuration
[Gibson] - Copying MongoDB configuration: SUCCESS
[Gibson] - Installing MongoDB
[Gibson] x Installing MongoDB: FAILED

-----------------------------------STDERR-----------------------------------
docker: Error response from daemon: driver failed programming external connectivity on endpoint mongodb (1e188b51b171446cd22d96f40ceab1e696019e5ac33ca713d78827246ae37ec8): Error starting userland proxy: listen tcp 127.0.0.1:27017: bind: address already in use.
-----------------------------------STDOUT-----------------------------------
latest: Pulling from library/mongo
Digest: sha256:beff97308c36f7af664a1d04eb6ed09be1d14c17427065b2ec4b0de90967bb3f
Status: Image is up to date for mongo:latest
mongodb
c17e5ac9e9369b779da4aff639c16578dedbc7c357985f67d6e7b005d9cf3939
----------------------------------------------------------------------------

Но я не могу получить от этого никакого указания на то, что происходит не так. Проблема с Mongo, Meteor, mup или докером?

РЕДАКТИРОВАТЬ:

Пока я понял из сообщения, что "mup" пытается подключиться к Mongo по порту 27017 и терпит неудачу, я просто не понимаю, почему и как это исправить. У меня есть база данных, к которой я хочу подключить приложение, которую я переместил на сервер с моей локальной машины, используя mongodump и mongorestore. Я не могу решить, как подключить мое метеорное приложение к этой базе данных mongo.


person Public Trust    schedule 29.08.2016    source источник
comment
В нем говорится, что какое-то другое приложение уже использует порт 27017. Поскольку 2 приложения не могут использовать один и тот же порт, у вас есть 2 варианта: закрыть тот, который уже запущен (монгод?), или изменить файлы докеров, чтобы использовать другой порт.   -  person Alex Blex    schedule 29.08.2016
comment
Но Алекс, насколько я понимаю, MongoDB всегда работает на порту 27017, и несколько метеорных приложений всегда могут получить к нему доступ. Что я не понимаю?   -  person Public Trust    schedule 29.08.2016
comment
Когда вы запускаете mup setup, он устанавливает докер, затем устанавливает контейнер mongodb и пытается привязать его к порту 27017, терпит неудачу и сообщает о причине сбоя. Что здесь непонятно?   -  person Alex Blex    schedule 29.08.2016
comment
Раньше у меня было несколько метеорных приложений, запущенных на одном компьютере — когда я запускаю (или развертываю) одно приложение, мне не нужно останавливать или выключать MongoDB. Приложение метеора должно иметь возможность найти существующую базу данных, потому что для переменной настройки MONGO_URL установлено значение mongodb://localhost:27017/databaseName. Но вы предлагаете мне ОСТАНОВИТЬ mongod, прежде чем я смогу развернуть его с помощью mup. Чего я никогда раньше не делал.   -  person Public Trust    schedule 29.08.2016
comment
Слушай, я не знаю, что ты делал раньше и что изменилось с тех пор. Это просто то, что я вижу из ошибки, которую вы опубликовали.   -  person Alex Blex    schedule 29.08.2016
comment
Что, если вы измените порт в своем MONGO_URL?   -  person fmilani    schedule 29.08.2016


Ответы (1)


Он не просто пытается подключиться к mongod, но устанавливает mongod в контейнер и пытается привязать порт 27017 к локальному интерфейсу.

Если у вас уже установлен mongodb и вы предпочитаете использовать его, вам необходимо отключить установку mongodb в mup.js, mup.json или любом другом файле конфигурации, используемом в вашей версии mup.

person Alex Blex    schedule 29.08.2016