我正在尝试使用官方 Mongo dockerfile https://github.com/docker-library/mongo/blob/21a6f6cf3eff13a39b20c86224730a29823370ca/3.2/Dockerfile要启动数据库,我正在使用-v
将本地目录映射到的命令/data
容器内。
作为Dockerfile
,它尝试将此目录 chown 给用户 mongodb:
RUN mkdir -p /data/db /data/configdb \
&& chown -R mongodb:mongodb /data/db /data/configdb
VOLUME /data/db /data/configdb
但是,使用以下命令会失败:
chown: changing ownership of '/data/db': Permission denied
我在这里做错了什么?我找不到与此相关的任何文档 - 当然容器应该对映射目录具有完全权限,因为它是在 docker run 命令中显式传递的:
docker run -d --name mongocontainer -v R:\mongodata:/data/db -p 3000:27017 mongo:latest
您有类似的问题,说明了相同的错误消息蒙戈问题 68 https://github.com/docker-library/mongo/issues/68 or issue 74 https://github.com/docker-library/mongo/issues/74
宿主机卷目录不能位于/Users
(or ~
). Try:
docker run --name mongo -p 27017:27017 -v /var/lib/boot2docker/my-mongodb-data/:/data/db -d mongo --storageEngine wiredTiger
The PR 470 https://github.com/docker-library/docs/pull/470/files adds:
WARNING:因为 MongoDB 使用内存映射文件,所以无法通过 vboxsf 在您的主机上使用它(vbox bug https://www.virtualbox.org/ticket/819).
MongoDB 不支持 VirtualBox 共享文件夹 (see docs.mongodb.org https://docs.mongodb.org/manual/administration/production-notes/#fsync-on-directories以及相关的jira.mongodb.org https://jira.mongodb.org/browse/SERVER-8600 bug).
这意味着使用 Docker Toolbox 的默认设置无法运行数据目录映射到主机的 MongoDB 容器。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)