维基萌 - 2023-11-12T03:08:24Z
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即可。
AI生成摘要
本文介绍了如何使用Docker部署MongoDB数据库,包括拉取官方镜像、运行容器、创建用户和权限、删除和重新创建带权限的容器,以及设置随系统启动。还提到了如何添加新数据库账户。