无法在 Docker 容器内调用 chown(Docker for Windows)
Cannot call chown inside Docker container (Docker for Windows)
我正在尝试使用 official Mongo 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 运行 命令中明确传递:
docker run -d --name mongocontainer -v R:\mongodata:/data/db -p 3000:27017 mongo:latest
您在 mongo issues 68 or issue 74
中遇到了说明相同错误消息的类似问题
The host machine volume directory cannot be under /Users
(or ~
). Try:
docker run --name mongo -p 27017:27017 -v /var/lib/boot2docker/my-mongodb-data/:/data/db -d mongo --storageEngine wiredTiger
PR 470 添加:
WARNING: because MongoDB uses memory mapped files it is not possible to use it through vboxsf to your host (vbox bug).
VirtualBox shared folders are not supported by MongoDB (see docs.mongodb.org and related jira.mongodb.org bug).
This means that it is not possible with the default setup using Docker Toolbox to run a MongoDB container with the data directory mapped to the host.
我正在尝试使用 official Mongo 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 运行 命令中明确传递:
docker run -d --name mongocontainer -v R:\mongodata:/data/db -p 3000:27017 mongo:latest
您在 mongo issues 68 or issue 74
中遇到了说明相同错误消息的类似问题The host machine volume directory cannot be under
/Users
(or~
). Try:
docker run --name mongo -p 27017:27017 -v /var/lib/boot2docker/my-mongodb-data/:/data/db -d mongo --storageEngine wiredTiger
PR 470 添加:
WARNING: because MongoDB uses memory mapped files it is not possible to use it through vboxsf to your host (vbox bug).
VirtualBox shared folders are not supported by MongoDB (see docs.mongodb.org and related jira.mongodb.org bug).
This means that it is not possible with the default setup using Docker Toolbox to run a MongoDB container with the data directory mapped to the host.