Может аутентифицироваться в экземпляре Docker Mongo с помощью CLI, но не с помощью других средств.

Я считаю, что недостаток заключается в том, что HTML - это грамматика Хомского типа 2 (контекстная свободная грамматика) , а RegEx - грамматика Хомского типа 3 (регулярная грамматика) . Поскольку грамматика типа 2 существенно сложнее, чем грамматика типа 3 (см. Иерархию Хомского ), вы не можете выполнить эту работу. Но многие попробуют, некоторые будут претендовать на успех, а другие найдут ошибку и полностью испортят вас.

0
задан 360 17 January 2019 в 15:39
поделиться

1 ответ

После некоторых раздумий я понял, в чем проблема в конце.

Похоже, что mongodb в Windows может запускаться как локальный сервис, который запускает базу данных на 127.0.0.1:27017.

Таким образом, используя Robo3T, я подключался к этому локальному экземпляру, а не к своему подключенному экземпляру Docker Mongo. С Robo3T я мог подключиться к этому локальному экземпляру, когда снял флажок «Выполнить аутентификацию».

В Robo3T вы можете выбрать -> щелкните правой кнопкой мыши «Открыть оболочку» -> db.hostInfo() -> F5 -> Просмотреть результаты в текстовом режиме. Это даст информацию о моем настольном компьютере

, тогда как docker exec -it mongodb mongo --eval 'db.hostInfo()' будет отображать информацию, касающуюся моего изображения докера.

Моим решением было отключить службу mongo на моем настольном компьютере, которая запускает локальную базу данных.

Это позволило бы docker run -p 27017:27017 -it --name mongodb <myregistry>.azurecr.io/movo.mongodb привязаться к моему док-контейнеру в 127.0.0.1:27017

0
ответ дан 360 17 January 2019 в 15:39
поделиться
Другие вопросы по тегам:

Похожие вопросы: