Certifique-se de que o diretório / data / db tenha as permissões corretas executando
sudo chown -R
id -un
/data/dbEnter your password
Estou tentando configurar uma instância local do Mongo usando o Docker para fins de desenvolvimento. Preciso ativar a autenticação e, de acordo com os documentos , é possível.
O problema é que, depois de criar o usuário admin inicial (usando esses documentos acima), o próximo passo é conectar-se "externamente", o que falha. Eu também gostaria de poder conectar via cliente grosso (estou usando o Robo 3T).
Eu criei o contêiner docker usando:
docker run --name mongodb -p 0.0.0.0:27017:27017 -d mongo --auth
Então eu criei o usuário admin com:
docker exec -it mongodb mongo admin
> db.createUser({ user: 'root', pwd: '123456', roles: [ { role: "userAdminAnyDatabase", db: "admin" } ] });
Depois tentei fazer o login externamente usando:
docker run -it --rm --link mongodb:mongo mongo mongo -u root -p 123456
para obter o erro:
MongoDB shell version v3.6.2
connecting to: mongodb://127.0.0.1:27017
2018-01-26T16:17:34.309+0000 W NETWORK [thread1] Failed to connect to 127.0.0.1:27017, in(checking socket for error after poll), reason: Connection refused
2018-01-26T16:17:34.309+0000 E QUERY [thread1] Error: couldn't connect to server 127.0.0.1:27017, connection attempt failed :
connect@src/mongo/shell/mongo.js:251:13
@(connect):1:6
exception: connect failed
Acho que estou entendendo mal alguma coisa, mas não tenho certeza sobre o quê.
Certifique-se de que o diretório / data / db tenha as permissões corretas executando
sudo chown -R
id -un
/data/dbEnter your password