Запуск Mongo eval в контейнере Docker возвращает случайную строку? - PullRequest
0 голосов
/ 26 апреля 2018

Я пытаюсь запустить следующий клиент Docker mongo с eval, который получает все имена баз данных. Однако он возвращает строку типа 6baed0a2a2b0aac93d56a02238132cb9726. Что это за строка? Если я запускаю клиент mongo на localhost, он возвращает правильные имена баз данных.

docker run --name NAME -d mongo --host SERVER --username USER --password PASS --authenticationDatabase admin --ssl --eval \"printjson(db.getMongo().getDBNames())\" > availableMongoDatabases.txt"

1 Ответ

0 голосов
/ 26 апреля 2018

Возвращаемая строка по docker run является идентификатором контейнера. Это не имеет ничего общего с приложением, которое выполняется внутри контейнера.

Следовательно, строка типа 6baed0a2a2b0aac93d56a02238132cb9726, о которой вы говорите, отличается в каждом контейнере, и поэтому вы будете получать разные значения при каждом выполнении docker run. Если вы хотите получить доступ к тому же контейнеру, не выполняйте docker run, а docker exec -ti [container_id] bash

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