MongoDB副本集-Docker版
阿新 • • 發佈:2018-05-21
docker1. 主機及容器規劃
Docker主機 | 容器名 | 端口 | 副本集 |
---|---|---|---|
192.168.0.40 | m40 | 27017 | rs0 |
192.168.0.41 | m41 | 27017 | rs0 |
192.168.0.42 | m42 | 27017 | rs0 |
2. 創建容器
2.1 在主機40上創建容器m40
docker run --name m40 -d -p 27017:27017 -v /etc/localtime:/etc/localtime:ro -v /data/db:/data/db -v /data/configdb:/data/configdb reg.citms.cn/public/mongo:3.2.19 mongod --replSet rs0
2.2. 在主機41上創建容器m41
docker run --name m41 -d -p 27017:27017 -v /etc/localtime:/etc/localtime:ro -v /data/db:/data/db -v /data/configdb:/data/configdb reg.citms.cn/public/mongo:3.2.19 mongod --replSet rs0
2.3. 在主機42上創建容器m42
docker run --name m42 -d -p 27017:27017 -v /etc/localtime:/etc/localtime:ro -v /data/db:/data/db -v /data/configdb:/data/configdb reg.citms.cn/public/mongo:3.2.19 mongod --replSet rs0
3. 搭建副本集
###3.1. 連接上其中一個容器並運行mongo shell
docker exec -it m40 mongo
###3.2. 初始化 replica set
rs.initiate( {
_id : "rs0",
members: [
{ _id: 0, host: "192.168.0.40:27017" },
{ _id: 1, host: "192.168.0.41:27017" },
{ _id: 2, host: "192.168.0.42:27017" }
]
})
###3.3. 查看replica set配置,輸出略
rs.conf()
###3.5. 識別副本集的主節點,輸出略
rs.status()
MongoDB副本集-Docker版