2015-04-15 74 views
0

我有一個流星應用程序。並運行它之前,我設置MONGO_URL這樣的:MONGO_URL沒有被流星應用程序拾起

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反正可能不是一個好主意,除非你不得不)

+0

我正在使用'sudo'運行應用程序,因爲如果我沒有收到關於「錯誤:SQLITE_CANTOPEN:無法打開數據庫文件」的錯誤。我是否應該將.meteor目錄更改爲用於使用我的虛擬機登錄的用戶? – JoeTidee

+1

是的,我肯定會修復你的權限問題(不要忘記'-R'),而不是把鑰匙交給王國...... – declension

+0

爲了幫助別人,這裏有一篇很好的文章來解決流星應用的權限:http: //www.maxlibin.com/remove-sudo-meteor/ – JoeTidee