在docker中映射卷

时间:2016-08-30 02:14:35

标签: mongodb docker dockerfile

我正在尝试使用-v" / Users // data:/ data /"

将卷映射到泊坞窗图像
> docker run -p 27017:27017 --name mongo2_001 -d mongo -v "/Users/<user>/data:/data"
6cf25618d...

> docker ps -a
CONTAINER ID IMAGE     COMMAND                  STATUS PORTS NAMES
6cf25618d..  mongo   "/usr/bin/mongod -v /"   Exited (1)                              mongoMG_001

失败并出现以下错误

> docker logs 6cf25618d..
2016-08-30T01:35:28.197+0000 F CONTROL  [main] Failed global
initialization: BadValue: The "verbose" option string cannot
contain any characters other than "v"

在没有&#34; -v ...&#34;似乎工作正常。 不确定会出现什么问题。

PS:Dockerfile用于创建上面使用的图像

FROM       ubuntu:16.04
MAINTAINER Docker
RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv EA312927
RUN echo "deb http://repo.mongodb.org/apt/ubuntu $(cat /etc/lsb-release | grep DISTRIB_CODENAME | cut -d= -f2)/mongodb-org/3.2 multiverse" | tee /etc/apt/sources.list.d/mongodb-org-3.2.list
RUN apt-get update && apt-get install -y mongodb-org
RUN mkdir -p /data/db
WORKDIR /data
EXPOSE 27017
ENTRYPOINT ["/usr/bin/mongod"]

2 个答案:

答案 0 :(得分:3)

传递的“-v”参数的顺序不正确。

而不是去docker命令“-v”选项,而是转到mongo容器。因此重新排序命令,如下所示

docker run -p 27018:27017 -v /Users/<user>/data:/data --name mongo2_001 -d mongo

在Windows上

docker run -p 27017:27017 -v /c/Users/<user>/data:/data --name mongo2_001 -d mongo

答案 1 :(得分:0)

董建华的答案对我不起作用。我可以通过以下命令使其工作

docker run --name mongodb_win -v mongoWinData:/data/db -d -p 37017:27017 mongo