gpt4 book ai didi

mongodb - 让其他容器访问mongo官方docker镜像

转载 作者:行者123 更新时间:2023-12-02 18:48:30 26 4
gpt4 key购买 nike

我有几个Docker容器,其中一个是Mongodb官方镜像,

这是我的docker-compose.yml文件的一部分

version: '3'
services:
mongo:
image: mongo
container_name: mongo01
# command: ["mongod", "-f", "/etc/mongo/mongod.conf"]
volumes:
- ./data/mongodata:/data/db
# - ./config/mongo:/etc/mongo
restart: always
ports:
- "27017:27017"

我可以从主机(我的系统)访问mongo服务,但是根据mongo新的安全策略,仅通过 127.0.0.1就可以配置对mongo的限制访问,我知道,这是
# network interfaces

net:
port: 27017
bindIp: 127.0.0.1

如果我可以推送mongo图片以读取我的自定义配置,则可以解决该问题,但是我尝试

挂载自定义配置文件 - ./config/mongo:/etc/mongo,然后使用 command: ["mongod", "-f", "/etc/mongo/mongod.conf"]运行mongod,但是没有用。

似乎mongod在进程1中从容器中启动并尝试使用自定义命令运行它不起作用,即使当我尝试使用 mongod --shutdown关闭容器中的mongod时,它也会关闭整个容器。(我想停止mongod然后再使用 mongod --bind_ip_all)

因此,问题在于我们如何更改mongo镜像配置文件?

最佳答案

mongo docker image已经设置了ENTRYPOINT,并且基本上是mongod,因此在命令(CMD)中可以向mongod添加额外的参数

简单的docker run

docker run -d mongo --bind_ip_all

或与撰写
version: '3'
services:
mongo:
image: mongo
command: ["--bind_ip_all"]
ports:
- "27017:27017"

关于mongodb - 让其他容器访问mongo官方docker镜像,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51633332/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com