Docker之MongoDB容器中创建用户与授权操作

Docker之MongoDB容器中创建用户与授权操作

文章目录

  • Docker之MongoDB容器中创建用户与授权操作
  • [1. 拉取MongoDB镜像](#1. 拉取MongoDB镜像)
  • [2. 运行容器](#2. 运行容器)
  • [3. 创建用户与授权](#3. 创建用户与授权)
    • [1. 创建管理员用户](#1. 创建管理员用户)
    • [2. 管理员用户创建其他用户](#2. 管理员用户创建其他用户)
    • [2. 修改用户](#2. 修改用户)
    • [4. 删除用户](#4. 删除用户)

其他配置参照docker Hub官网:Mongo - Official Image | Docker Hub

1. 拉取MongoDB镜像

shell 复制代码
docker pull mongo:4.2.23

2. 运行容器

  1. 运行一个名称为auth_mongo镜像,且挂载容器数据券为F:/dockeData/mongodb4223/data/db:/data/db
  2. 通过--auth来开启授权功能
shell 复制代码
# --auth表示连接mongodb时需要授权
docker run -it -d --name auth_mongo -v F:/dockeData/mongodb4223/data/db:/data/db -p 27017:27017 mongo:4.2.23 --auth

3. 创建用户与授权

进入容器内部创建用户

1. 创建管理员用户

shell 复制代码
#进入容器
docker exec -it auth_mongo mongo admin
# 添加管理员用户
db.createUser({ user:'admin',pwd:'admin@123',roles:[ { role:'root', db: 'admin'}]});
# 切换到admin数据库
use admin
# 登录认证
db.auth('admin', 'admin@123')
# 查看数据库
show dbs

2. 管理员用户创建其他用户

  1. 先登录管理员账户;
  2. 切换到某个数据库并创建其他用户
shell 复制代码
# 1.先使用admin账户登录
use admin
db.auth('admin','admin@123')
# 2.切换到并创建my_db库
use my_db
# 在my_db数据库下创建test_user用户
db.createUser({user:'test_user',pwd:'test_user',roles:['readWrite']})
#通过账号密码登录并添加users集合数据
db.auth("test_user","test_user")
# 插入测试数据
db.users.insert( { name:"jinshengyuan", age:22} )

2. 修改用户

如修改test_user用户的角色

shell 复制代码
db.updateUser({user:'test_user',pwd:'test_user',roles:[{role:'userAdminAnyDatabase',db:'admin'}]})

4. 删除用户

shell 复制代码
# 删除用户
db.dropUser('test_user')

)

复制代码
相关推荐
DO_Community20 分钟前
DigitalOcean Kubernetes 现已支持 Gateway API 托管服务
容器·kubernetes·gateway
脚踏实地的大梦想家39 分钟前
【Docker】P2 Docker环境构建准备:MacOS 与 Linux
linux·macos·docker
什么都想学的阿超3 小时前
【大语言模型 57】容器化训练环境:Docker + Kubernetes + Slurm
docker·语言模型·kubernetes
敲上瘾3 小时前
Docker网络实战:容器通信与隔离之道
linux·网络·docker·微服务·容器
a栋栋栋12 小时前
wsl 环境下用Docker 安装多版本MySQL
mysql·docker·容器
潮落拾贝12 小时前
k8s部署kafka三节点集群
容器·kafka·kubernetes
饱饱要坚持可持续发展观13 小时前
docker 拉取本地镜像
docker
我就要用Cx33013 小时前
配置docker常见问题
运维·docker·容器
m0_5557629013 小时前
项目1——单片机程序审查,控制系统流程图和时序图
单片机·mongodb·流程图
疯子@12316 小时前
nacos1.3.2 ARM 版容器镜像制作
java·linux·docker·容器