Как подключить mongoDB Compass к контейнеру mongoDB, который работает в azure VM? - PullRequest
0 голосов
/ 04 августа 2020

У меня есть контейнер mongoDB, который работает на azure ВМ, и я пытаюсь подключить его к своему компасу mongoDB. У меня есть IP-адрес Publi c для моей виртуальной машины, порт 27017 открыт в моей виртуальной машине, а также в моем контейнере mon go.

У меня есть аутентификация, поэтому для подключения моего mon go I ' m Войдите в контейнер mon go и напишите команду «mon go -u username -p password --authenticationDatabase admin» (актуально).

Когда я пытаюсь подключиться, я получаю "время подключения" out "сообщение об ошибке.

docker container ls

enter image description here

Open ports on the VM

enter image description here

My compass login page

введите описание изображения здесь

Ответы [ 2 ]

1 голос
/ 06 августа 2020

Я решил это, изменив файл конфигурации контейнера mongoDB.

Шаг 1 : убедитесь, что порт 27017 открыт на ВМ:

введите описание изображения здесь

Шаг 2 : создайте файл конфигурации mongoDB, как показано ниже, назовите его mongod.conf и измените поле bindIp на IP-адрес вашего хоста (измените на свой IP-адрес хоста).

# mongod.conf

# for documentation of all options, see:
#   http://docs.mongodb.org/manual/reference/configuration-options/

# Where and how to store data.
storage:
  dbPath: /data/db
  journal:
    enabled: true
#  engine:
#  mmapv1:
#  wiredTiger:

# where to write logging data.
systemLog:
  destination: file
  logAppend: true
  path: /var/log/mongodb/mongod.log

# network interfaces
net:
  port: 27017
  bindIp: 127.0.0.1,<Host IP>


# how the process runs
processManagement:
  timeZoneInfo: /usr/share/zoneinfo

security:
  authorization: enabled

#operationProfiling:

#replication:

#sharding:

## Enterprise-Only Options:

#auditLog:

#snmp:

Шаг 3 : Скопируйте файл mogod.conf в вашу виртуальную машину и сохраните его где хотите.

Шаг 4 : Выполните команду:

 docker run -d -v <FolderPathOnTheVM>/mongod.conf:/etc/mongod.conf -p 27017:27017 mongo -f /etc/mongod.conf

Убедитесь, что вы изменили на путь к файлу mongod.conf на виртуальной машине (путь из шага 3).

0 голосов
/ 04 августа 2020

Выполните netstat на 27017 и проверьте, работает ли он на localhost или publi c IP. Если он работает на localhost, измените его на свой publi c IP в конфигурационном файле mongodb, а затем повторите попытку. Кроме того, введите lnet с вашего локального компьютера на IP-адрес и порт mongodb, чтобы проверить, работает ли он локально.

...