步骤如下(1master,2slave为例):
先拉取mongod镜像
启动三个mongo容器:
sudo docker run –name mongo_server1 -p 21117:27017 -d 127.0.0.1:5000/mongod:latest –smallfiles –replSet rs1
sudo docker run –name mongo_server2 -p 22117:27017 -d 127.0.0.1:5000/mongod:latest –smallfiles –replSet rs1
sudo docker run –name mongo_server3 -p 23117:27017 -d 127.0.0.1:5000/mongod:latest –smallfiles –replSet rs1查看各个IP:
依次执行:sudo docker exec mongo_server1 ifconfig配置成员信息:
成员1:
I. sudo docker exec -it mongo_server1 /bin/bash
II. myconf = {“_id”:”rs1”,”members”:[
{“_id”:0,”host”:”172.17.0.2:27017”},
{“_id”:1,”host”:”172.17.0.3:27017”},
{“_id”:2,”host”:”172.17.0.5:27017”}
]}
III. rs.initiate(myconf)
IV. rs.isMaster()
然后查看配置:rs.conf()成员2、3:
I. rs.slaveOk()
II. use admin
III. db.getMongo().setSlaveOk()
IV. db.setSlaveOk()配置用户名和密码:
I. docker exec -it mongo_server1 /bin/bash
II. mongo
III. use 数据库
IV. db.createUser(
{
user: “用户名”,
pwd: “密码”,
roles:[{role:’userAdmin’,db:’数据库’}]
}
);