Я пытаюсь настроить монго с помощью докера, но я не знаю правильный способ входа в монго. Кажется, он не создал пользователя root по умолчанию, как я указал:
version: '3'
services:
location-mongo-db:
container_name: location-mongo-db
image: mongo
ports:
- "27017:27017"
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: root
MONGO_INITDB_ROOT_PASSWORD: example
networks:
default:
external:
name: environment_location-mongo
Я бегу
docker-compose -f docker-compose/db.yml -p location-mongo-db up -d --build
Я тогда делаю
docker exec -it location-mongo-db sh
, чтобы войти в оболочку и запустить # mongo
изнутри контейнера. Я получаю следующее:
# mongo
MongoDB shell version v4.0.0
connecting to: mongodb://127.0.0.1:27017
MongoDB server version: 4.0.0
> show dbs
2018-06-28T15:45:36.337+0000 E QUERY [js] Error: listDatabases failed:{
"ok" : 0,
"errmsg" : "command listDatabases requires authentication",
"code" : 13,
"codeName" : "Unauthorized"
} :
_getErrorWithCode@src/mongo/shell/utils.js:25:13
Mongo.prototype.getDBs@src/mongo/shell/mongo.js:65:1
shellHelper.show@src/mongo/shell/utils.js:865:19
shellHelper@src/mongo/shell/utils.js:755:15
@(shellhelp2):1:1
Я не знаю, в чем проблема. Вот мой результат проверки списка пользователей:
> db.runCommand({connectionStatus : 1})
{
"authInfo" : {
"authenticatedUsers" : [ ],
"authenticatedUserRoles" : [ ]
},
"ok" : 1
}
Чего не хватает? Я пытался подписаться несколькими способами с помощью -u root
и -p
и т. Д., Но пока ничего не работает