使用docker搭建mongoDB副本集报错没有权限

3个节点,1主1从1仲裁

配置文件:
port = 27017

#数据目录
dbpath = /data/db

#日志所在目录
logpath = /var/log/mongodb/mongodb.log
#logpath = /data/log/mongod.log
#日志输出方式
logappend = true

在后台启动

fork = true

0.0.0.0表示任意IP均可连接

bind_ip = 0.0.0.0

#副本集名称
replSet = rs0

是否启用认证

auth = true

设置oplog的大小(MB)

oplogSize = 2048

docker指令:docker run -itd --name mongo1 --network ghh --restart=always -v /etc/localtime:/etc/localtime:ro -v /home/opt/mongodb/db1:/data/db -v /home/opt/mongodb/db1conf:/bin/mongoconf -p 27017:27017 --privileged=true -e MONGO_INITDB_ROOT_USERNAME=admin -e MONGO_INITDB_ROOT_PASSWORD=abc123 mongo:4.0.3 -f /bin/mongoconf/mongo.conf

进入容器后指令:
use admin
db.auth('admin','abc123')
rsconf = {
... ... _id: "rs0",
... ... members: [{_id:0,host:'mongo1:27017',priority:2},
{_id:1,host:'mongo2:27017',priority:1},
{_id:2,host:'mongo3:27017',arbiterOnly:true}]}
rs.initiate(rsconf)

运行结果及报错内容

img

已解决。