拉取镜像

docker pull mongo

运行容器

#不需要密码
docker run --name mongo -p 27017:27017 -v $PWD/db:/data/db -d mongo
#需要密码
 docker run -itd --name mongo -p 27017:27017 -v $PWD/db:/data/db  mongo --auth
#进入mongodb
docker exec -it mongo mongo admin
#创建用户
use admin
db.createUser({user:"root",pwd:"root",roles:["root"]})
db.createUser(  
  {  
    user: "admin",  
    pwd: "admin",  
    roles: [{role: "userAdminAnyDatabase", db: "admin"}]  
  }  
)

 

查看运行状态

docker ps

内置角色说明

基于角色的权限说明
内置角色
数据库用户角色
read: 只读数据权限
readWrite:学些数据权限

数据库管理角色
dbAdmin: 在当前db中执行管理操作的权限
dbOwner: 在当前db中执行任意操作
userADmin: 在当前db中管理user的权限

备份和还原角色
backup
restore

跨库角色
readAnyDatabase: 在所有数据库上都有读取数据的权限
readWriteAnyDatabase: 在所有数据库上都有读写数据的权限
userAdminAnyDatabase: 在所有数据库上都有管理user的权限
dbAdminAnyDatabase: 管理所有数据库的权限

集群管理
clusterAdmin: 管理机器的最高权限
clusterManager: 管理和监控集群的权限
clusterMonitor: 监控集群的权限
hostManager: 管理Server

超级权限
root: 超级用户