本文介绍了Mongo Docker与卷获取错误的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

运行 docker后运行--name mongo -p 27017:27017 -v〜/Documents/store/mongo/:/data/db -d mongo --smallfiles

store 目录中, ls -l

In store directory, ls -l

drwxr-xr-x  4 MeoBeoI  staff  136 Dec  8 17:11 mongo
drwxr-xr-x  2 MeoBeoI  staff   68 Dec  9 10:20 redis

我使用OSX 10.11.1

I use OSX 10.11.1

推荐答案

查看 mongo Dockerfile :

因此,请尝试确保与该用户一起启动容器:

So try and make sure to start your container with that user:

docker run --user mongodb ...

如果这不起作用,则回退到原始docker run命令(默认情况下以root用户运行)并定义 run.sh (需要复制到您自己的映像中),该命令将:

If that is not working, then fallback to the original docker run command (which runs as root by default) and define run.sh (that needs to be copied in your own image) which will:

  • 执行正确的 chown -R mongodb:mongodb/data/db
  • 致电 entrypoint.sh mongod

也就是说:

docker run ... run.sh

这将是类似于问题7198(可将uid& gid配置为用于共享卷).

这篇关于Mongo Docker与卷获取错误的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!

09-26 08:41