导航

萌即是正义!时不时分享一些ACG活动记录与有趣代码的小站!

在dokcer中设置带账户权限的mongodb容器

作者:广树·时间:2023-11-12 11:08:24·分类:后端代码

1.pull官方的mongodb Image

docker pull mongo

2.不带--auth 把容器run起来,将/data/db 映射到想要存储数据的位置,将27017映射到需要的端口。

docker run -d -p 27017:27017 -v /your/desired/data/directory:/data/db mongo

3.进入容器,按照顺序运行如下命令

3-0

docker exec -it <container_id> /bin/bash

3-1

mongo

3-2

use admin

3-3

db.createUser({ user: "admin", pwd: "xxxxxx", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })

3-4

db.auth("admin", "上面的密码")

3-5

use 其他要添加账户信息的数据库名

3-6

db.createUser({ user: "username", pwd: "password", roles: [{ role: "readWrite", db: "其他要添加账户信息的数据库名" }] })

4.删除容器。

docker stop <container_id>
docker rm <container_id>

5.创建带一个--auth的容器,映射和第二步一样。

docker run -d -p 27017:27017 -v /your/desired/data/directory:/data/db --name mongodb_auth mongo --auth

6.启动容器,访问数据库的格式为:

mongodb://账户:密码@host:27017/数据库名

7.如果需要让mongodb随系统启动的话

docker update --restart=always <容器ID 或 容器名称>

追加新的数据库时只用重复3-1,3-2,(跳过3-3),3-4,3-5,3-6即可。


侧边栏
最新评论
广树
2024-05-17
@老张博客:一千多人民币的水平吧
广树
2024-05-17
@MqyGalaxy:以前空中网的时代好像没有同步吧,现在同步了呀。
广树
2024-05-17
@DavidYR:不愧是大佬!行动力好强!我已经好几年没碰坦克世界了🤭
老张博客
2024-05-17
不知道你说的贵是多少钱呀。
MqyGalaxy
2024-05-17
@广树:我不是很清楚,一直都玩的是亚服美服OωO。但好像一直都是同步的吧
正在攻略

圣兽之王.jpg

传颂之物

PSN奖杯卡

PSN奖杯卡

赞助商广告