首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >我是否正确地装载了MongoDB容器的卷?

我是否正确地装载了MongoDB容器的卷?
EN

Stack Overflow用户
提问于 2018-01-02 00:29:10
回答 1查看 1.9K关注 0票数 0

我下载了一个MongoDB docker镜像,并希望挂载一个卷来保存添加到MongoDB中的数据。我对卷是否正确挂载以及容器使用的是卷还是绑定挂载感到困惑。

首先我创建了一个卷:

代码语言:javascript
复制
docker volume create mongo-vol-1

然后我运行docker run命令:

代码语言:javascript
复制
docker run \
-p 30001:27017 \
--name mongo-1 \
--mount source=mongo-vol-1,target=/users/owner/documents/mongodb/data/\  
mongo mongod

容器可以启动,测试数据可以成功添加。然而,在退出容器之后,/users/owner/document/mongodb/data目录仍然是空的。

我重新启动了容器,但仍然可以检索到测试数据。

数据是否存储在容器中,而不是主机目录中?如果是,如何将主机目录链接到MongoDB存储数据的位置?

另外,我运行了一个docker inspect命令:

代码语言:javascript
复制
docker inspect mongo-1

结果是:

代码语言:javascript
复制
...
"Mounts": [
{
    "Type": "volume",
    "Source": "mongo-vol-1",
    "Target": "/users/owner/documents/mongodb/data"
}
...
"Volumes": {
     "/data/configdb": {},
     "/data/db": {}
        },
...

根据上面的结果,我不确定目标目录是挂载目录还是卷目录?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-01-02 04:58:03

请执行docker inspect mongo-vol-1,您就会知道挂载点在哪里。

/users/owner/documents/mongodb/data是容器内部的位置,从容器的理解来看,它是检索数据的位置。

更多细节:https://docs.docker.com/engine/admin/volumes/volumes/#start-a-container-with-a-volume

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/48051332

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档