2015-04-15 2 views
0

У меня есть приложение Meteor. и перед запуском я поставил MONGO_URL так:MONGO_URL не принимается приложением Meteor

MONGO_URL="mongodb://127.0.0.1:3001/my-db" 

Я присоединяюсь окр вар, чтобы убедиться, что он сделан с использованием:

echo $MONGO_URL 

и все хорошо. В любом случае, когда я запускаю:

sudo meteor run 

Приложение. запускается без ошибок, но база данных, к которой он подключается, не является базой данных «my-db» - она ​​подключается к базе данных «meteor» по умолчанию! Как это происходит, когда я явно устанавливаю MONGO_URL заранее?

ответ

2

Вам нужно сделать одну из двух вещей:

использовать переменную встроенный

$ MONGO_URL="mongodb://127.0.0.1:3001/my-db" meteor 

экспортировать переменную

$ export MONGO_URL="mongodb://127.0.0.1:3001/my-db" 
$ meteor 

export требуется в последнем случае поэтому переменная будет доступна для подпроцесса.

2

Проблема: вы это определили для процесса своего пользователя, а не для root.

Либо использовать sudo -E пройти через среду [переменные], или запустить meteor и сценарий как же пользователя (связанные:? Почему ты убегаешь как root все равно, вероятно, никогда не является хорошей идеей, если вы вынуждены to)

+0

Я запускаю приложение, используя 'sudo', потому что, если я этого не делаю, я получаю ошибки, которые фокусируются вокруг «Ошибка: SQLITE_CANTOPEN: невозможно открыть файл базы данных». Должен ли я использовать каталог .meteor для пользователя, который я использую для входа на мою виртуальную машину? – JoeTidee

+1

Да, я определенно исправляю ваши проблемы с разрешением (не забудьте '-R'), а не передавайте ключи в королевство ... – declension

+0

Чтобы помочь другим, вот хорошая статья, чтобы исправить разрешения на использование метеоритов: http: //www.maxlibin.com/remove-sudo-meteor/ – JoeTidee