首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >在已停靠的mongodb上找不到mongodb配置文件

在已停靠的mongodb上找不到mongodb配置文件
EN

Stack Overflow用户
提问于 2019-06-16 13:25:06
回答 2查看 2K关注 0票数 0

首先,我知道解决问题的方法会更简单,但是为了更好地理解对接者,我想用这种方法来解决运行一个港口化mongodb的问题。

我现在正在尝试通过获取一个已经存在的Dockerfile并修改它来构建我自己的mongodb坞映像。修改:我希望能够访问mongodb使用的mongodb.conf文件。

这是我的文件。我只添加了一行VOLUME ["/etc"],并更改了最后一行(我添加了最后一个-f参数)。构建映像并在容器中运行它,在没有这些更改的情况下工作得很好。

代码语言:javascript
复制
FROM debian:jessie-slim
RUN apt-get update && \
apt-get install -y ca-certificates && \
rm -rf /var/lib/apt/lists/*
RUN gpg --keyserver ha.pool.sks-keyservers.net --recv-keys 0C49F3730359A14518585931BC711F9BA15703C6 && \
gpg --export $GPG_KEYS > /etc/apt/trusted.gpg.d/mongodb.gpg
ARG MONGO_PACKAGE=mongodb-org
ARG MONGO_REPO=repo.mongodb.org
ENV MONGO_PACKAGE=${MONGO_PACKAGE} MONGO_REPO=${MONGO_REPO}
ENV MONGO_MAJOR 3.4
ENV MONGO_VERSION 3.4.18
RUN echo "deb http://$MONGO_REPO/apt/debian jessie/${MONGO_PACKAGE%-unstable}/$MONGO_MAJOR main" | tee "/etc/apt/sources.list.d/${MONGO_PACKAGE%-unstable}.list"
RUN echo "/etc/apt/sources.list.d/${MONGO_PACKAGE%-unstable}.list"
RUN apt-get update
RUN apt-get install -y ${MONGO_PACKAGE}=$MONGO_VERSION
VOLUME ["/data/db"]
VOLUME ["/etc"]
WORKDIR /data
EXPOSE 27017
CMD ["mongod", "--smallfiles", "-f /etc/mongodb.conf"]

但是,随着我的更改,构建的图像无法启动。它马上就会离开。docker logs <container-name>给了我

代码语言:javascript
复制
Error reading config file: No such file or directory
try 'mongod --help' for more information

我使用了run命令docker run -p 37017:27017 -d -v /tmp/mongodb/data:/data/db -v /tmp/mongodb/etc:/etc mongo-image,并期望在我的主机系统上位于/tmp/mongodb/etc/mongodb.conf上的文件会被找到(是的,它存在,我把它放在那里)。

我做错了什么?我是刚来码头的,我想我把书搞砸了?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2019-06-16 13:39:52

您不需要指定以下行:

代码语言:javascript
复制
VOLUME ["/data/db"]
VOLUME ["/etc"]

您的dockerfile中的VOLUME/var/lib/docker/volumes下在主机上创建单独的目录以获取更多信息,请查看this

您的-v命令中的docker run选项应该足以在容器中的主机上挂载mongodb.conf。

更新--我对您的dockerfile做了一点小小的更改,它开始工作了。CMD ["mongod", "--smallfiles", "-f", "/etc/mongodb.conf"]

-f/etc/mongodb.conf应该用逗号分隔,即CMD的语法。

请在最后再试一试,让我知道。

票数 0
EN

Stack Overflow用户

发布于 2019-11-18 22:19:32

对于那些在2019年寻找如何在本地安装的快速指南的人,最后出现了类似于这个问题中提到的问题(就在1小时前我刚刚遇到的问题),我写了一个快速的“指南”:docker

希望这对某人有用。

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

https://stackoverflow.com/questions/56619265

复制
相关文章

相似问题

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