Подключение к MongoDb в Docker - PullRequest
0 голосов
/ 03 апреля 2020

Я действительно новичок в использовании Docker, и теперь я пытаюсь запустить Mongodb в Docker локально и получить соединение с ним. Я не знаю почему, но я не могу установить соединение.

Настройка: Я использую Ma c с MacOS Catalina 10.15.4 - Docker Версия для ПК 2.2.0.5

Мой Dockerfile:

FROM ubuntu

RUN apt-get update && apt-get install -y gnupg2

RUN apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 7F0CEB10

RUN echo 'deb http://downloads-distro.mongodb.org/repo/ubuntu-upstart dist 10gen' > tee /etc/apt/sources.list.d/mongodb.list

RUN apt-get update

RUN apt-get install -y mongodb

RUN mkdir -p /data/db

EXPOSE 27017

CMD ["--port 27017"]

ENTRYPOINT usr/bin/mongod

после этого я запускаю эти команды:

  1. docker build -t testmongodb.

  2. docker run -p 27017: 27017 testmongodb

Я вижу Runnig Image в Docker Desktop и пытаюсь использовать Studio 3T для подключения к Mongodb моего URL для этого есть:

1 Ответ

0 голосов
/ 03 апреля 2020

Экземпляр mongod по умолчанию прослушивает только интерфейс обратной связи 127.0.0.1. В этом случае это означает петлевой интерфейс внутри контейнера. Чтобы он также прослушивал внешние соединения, вам нужно указать отдельный ip:

ENTRYPOINT usr/bin/mongod --bind_ip 0.0.0.0

В качестве отдельного примера, выкатываете собственное docker изображение для чего-то вроде mongodb, которое имеет official docker image уже редко бывает хорошей идеей, если вы не знаете, что делаете, или вам нужно больше, чем может предоставить официальное изображение.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...