Bal*_*ngh 5 mongodb docker replicaset
我正在努力寻找通过 docker 脚本对我的 mongo db 副本集进行身份验证的解决方案。我能够在服务器的本机 mongo 上实现目标,但在 docker 映像中我无法实现身份验证。(我能够创建docker 映像上的副本集也是如此)。
我面临着同样的问题,我必须以不同的顺序执行该过程。尝试先设置身份验证,然后创建复制。
1.在没有副本或身份验证的情况下启动docker mongo
docker run --rm -p 22222:27017 -v datadb1:/data/db --name mongonew mongo:2.6
Run Code Online (Sandbox Code Playgroud)
2.连接mongo并添加你想要的用户。并确保添加超级用户,稍后我们将使用该用户启动复制
db.createUser({ user: "superuser", pwd: "superuser", roles: [ "userAdminAnyDatabase","readWriteAnyDatabase","dbAdminAnyDatabase","clusterAdmin" ]})
Run Code Online (Sandbox Code Playgroud)
3.停止 docker mongo 并使用副本和身份验证重新启动
docker run --rm -p 22222:27017 -v datadb1:/data/db --name mongonew mongo:2.6 --replSet replocalnew --auth
Run Code Online (Sandbox Code Playgroud)
4.现在连接mongo。使用我们创建的超级用户进行身份验证。
db.auth("superuser","superuser");
Run Code Online (Sandbox Code Playgroud)
5.现在开始复制
rs.initiate();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1378 次 |
| 最近记录: |