Vagrant Share 下的 Meteor 应用问题

4
我有一个使用meteor的vagrant虚拟机(virtualbox)设置,我的主机和客户端都是Ubuntu。该虚拟机包含通过Vagrantfile设置的vboxfs共享文件夹。我注意到的行为类似于NFS挂载。
我能够在这个共享文件夹中创建一个meteor项目,但是当我运行该项目时,我会遇到指向mongodb的错误。
如果我按照以下说明操作https://github.com/pixelhandler/vagrant-dev-env/blob/master/README.md,我的应用程序就可以正常工作了。
进一步调查发现,MongoDB无法在NFS共享上工作,http://www.mongodb.org/display/DOCS/NFS 是否有其他人遇到过这个问题?如果有,你们是否找到了(非rsync)解决方案?
我计划将此问题的链接发送给10gen,也许他们团队中的某个人可以回答它。
3个回答

6

不确定Mongo在NFS/vboxfs上运行的计划是什么,但您可以通过在共享文件夹之外运行自己的MongoDB来解决此问题(例如,使用ubuntu mongodb软件包)。使用MONGO_URL环境变量告诉meteor要连接到哪里。如果传递此变量,meteor将不会尝试在meteor项目目录中启动MongoDB。


我还要注意,在vagrant中不应指定PWD或HOME环境变量,因为这也会导致错误。 - DefionsCode

4

MongoDB的数据只存储在.meteor/local中吗?我看到其他解决方案会挂载整个.meteor文件夹,但这会破坏Meteorite。 - mpen
如果/vagrant是NTFS文件系统,ln -s会显示ln: failed to create symbolic link ‘./homedb’: Protocol error,尽管使用mklinkln可以理解的文件系统可能是可行的。 - Cees Timmerman

0

grahamrhay的解决方案在Windows上启动vagrant box时无法工作。对于vagrant来说,在Windows上没有办法创建符号链接,至少管理员账户也不行。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接