基本上,我想在os x的ubuntu docker中运行 meteor ,并使用atom来编辑源代码。因此,我使用共享卷来实现这一目标。
我使用virtualbox 4.3.30和boot2docker 1.71。
meteor 应用不在共享卷中时运行良好。
但是,如果我把它放在共享卷中,它会说:
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Unexpected mongo exit code 100. Restarting.
Can't start Mongo server.
MongoDB had an unspecified uncaught exception.
This can be caused by MongoDB being unable to write to a local database.
Check that you have permissions to write to .meteor/local. MongoDB does
not support filesystems like NFS that do not allow file locking.
我用来运行docker的命令是
docker run -t -i -p 3000:3000 -v ~/Documents/myapp:/home/myapp -d ubuntu
我的问题是如何让 meteor 应用程序在共享卷中成功运行mongodb?
我曾尝试过'meteor reset'并删除.meteor中的锁定文件,但没有一个起作用。
最佳答案
问题是mongodb不支持共享NFS文件类型。 boot2docker使用NFS。您可以尝试使用虚拟盒文件的共享(在https://github.com/boot2docker/boot2docker#virtualbox-guest-additions中进行说明)。
另一种选择是使用azk,它是核心团队的一部分。
注意:目前仅Mac OS X和Linux
关于mongodb - MongoDB无法从boot2docker写入docker中的本地数据库,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/31608949/