按照这里的建议,我正在为单神服务器创建一个坞容器。我的停靠者撰写文件如下所示:
version: '3.2'
services:
mongo:
container_name: mongo
image: mongo
restart: always
environment:
MONGO_INITDB_ROOT_USERNAME: admin
MONGO_INITDB_ROOT_PASSWORD: admin
volumes:
- ./data:/data/db
ports:
- "27017:27017"然后使用docker命令构建并运行容器:
docker-compose up --build在启动日志中,我可以看到正在创建的用户:
mongo | 2018-12-03T04:40:00.562+0000 I STORAGE [conn2] createCollection:
admin.system.users with generated UUID: ...
mongo | Successfully added user: {
mongo | "user" : "admin",
mongo | "roles" : [
mongo | {
mongo | "role" : "root",
mongo | "db" : "admin"
mongo | }
mongo | ]
mongo | }但是,当我试图使用该用户的auth启动mongo时,会得到一个授权错误:
mongo -u "admin" -p "admin"
2018-12-03T04:47:34.752+0000 E QUERY [thread1] Error: Authentication failed. :
DB.prototype._authOrThrow@src/mongo/shell/db.js:1608:20
@(auth):6:1
@(auth):1:2
exception: login failed使用上述凭据连接到mongo的正确命令是什么?
发布于 2018-12-04 05:37:12
最后,我只丢失了authdb标志,因此下面的mongo命令解决了我的问题:
mongo -u "admin" -p "admin" --authenticationDatabase 'admin'发布于 2018-12-03 05:44:37
在mongo上配置身份验证有一些先决条件:
在此之后,重新启动您的对接程序,然后执行以下步骤:
mongo连接到芒果- Provide authentication database to connect to mongo:
mongo -u root -proot
https://stackoverflow.com/questions/53587663
复制相似问题