博文目录
文章目录
- 说明
- 命令
- 后置
说明
Docker Hub MongoDB
数据卷 | 数据卷印射在容器内的路径 |
---|---|
mongo | /data/db |
mongo.config.db | /data/configdb |
容器内的路径 | 说明 |
---|---|
/data/db | 数据目录 |
/data/configdb | 不太清楚 |
部分环境变量 | 是否必要 | 说明 |
---|---|---|
MONGO_INITDB_DATABASE | 可选 | 设置数据库的名称, 首次使用时创建 |
MONGO_INITDB_ROOT_USERNAME | 可选 | 在 admin 身份验证数据库中创建超级用户的用户名 |
MONGO_INITDB_ROOT_PASSWORD | 可选 | 在 admin 身份验证数据库中创建超级用户的密码 |
命令
docker pull mongo:7.0.7
docker volume create mongo
docker volume create mongo.config.db
docker run -d --name mongo -p 27017:27017 -e TZ=Asia/Shanghai -e MONGO_INITDB_DATABASE=mongo -e MONGO_INITDB_ROOT_USERNAME=root -e MONGO_INITDB_ROOT_PASSWORD=Mrv587.. -v mongo:/data/db -v mongo.config.db:/data/configdb mongo:7.0.7
# 查看日志
docker logs mongo
# 跟踪日志
docker logs -f mongo
docker logs --follow mongo
# 查看最后10条日志
docker logs --tail 10 mongo
# 查看最近10分钟的日志
docker logs --since 10m mongo
# 进入容器并执行 bash
docker exec -it mongo bash
# 退出容器
exit# 进入客户端
mongosh localhost:27017
# 认证与鉴权, root
use admin;
db.auth("root", "Mrv587..");
# 退出客户端
exit# 直接从主机进入客户端
docker exec -it mongo mongosh localhost:27017
后置
创建其他数据库和用户
# 创建 yapi 数据库与对应管理账户, 第一次使用该数据库时创建该数据库
use yapi;
db.createUser({user: 'yapi', pwd: 'Mrv587..', roles: [{role: "dbAdmin", db: "yapi"}, {role: "readWrite", db: "yapi"}]});
# 查看当前数据库信息
db.stats();