导航

萌即是正义!时不时分享一些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-06-19
@Xia:是呀,原来塞尔达传说这个名字是伏笔
Xia
2024-06-19
塞尔达:终于又轮到我当主角了(☆ω☆)
广树
2024-06-19
@粽叶加米:是呀,之前梦见岛的引擎
粽叶加米
2024-06-19
而且是Q可爱的。
广树
2024-06-19
@Jacylunatic:确实,这样才公平
正在攻略

传颂之物

PSN奖杯卡

PSN奖杯卡

赞助商广告