导航

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

侧边栏
最新评论
广树
2024-07-25 19:11
@Chlorine:好的大佬!珍惜现有的大学生活吧,未来的强度可能会更高🤭。
Chlorine
2024-07-25 18:23
@广树:真说不上大佬,只是一个被大二即将到来的高强度课程吓破胆的小菜鸡(/TДT)/
广树
2024-07-25 09:06
@Chlorine:爱学习的大佬!
Chlorine
2024-07-25 08:28
hhh,学习 C++——吉,那就学 DSA (数据结构)去啦 awa
广树
2024-07-24 21:00
@Jacylunatic:还没预约上呢🤭
正在攻略

あおかなEXTRA1

黑白的莫比乌斯.jpg


PSN奖杯卡

PSN奖杯卡

赞助商广告

在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即可。