docker安装mongo
拉取最新镜像
docker pull mongo:latest创建mongo数据持久化目录
mkdir -p /Users/xiaoping/docker/appdata/mongodb/data运行容器(不需要认证)
docker run -d --name mongo-DB -p 27017:27017 -v /Users/xiaoping/docker/appdata/mongodb/data:/data/db mongo:latest
-v: 将宿主机的/Users/xiaoping/docker/appdata/mongodb/data映射到容器的/data/db目录,将数据持久化到宿主机,以防止删除容器后,容器内的数据丢失
注:如果需要认证,在上述命令后加--auth
进入容器,配置用户
docker exec -it mongo-DB mongosh切换到admin库
use admin创建一个用户,mongo 默认没有用户
db.createUser({user: 'xiaoping',pwd: '123456',roles: [{ role: 'userAdminAnyDatabase', db: 'admin' }]
})
【user:‘xiaoping’ 】:设置用户名为xiaoping
【pwd:‘123456’】:设置密码为123456
【role:‘userAdminAnyDatabase’】:只在admin数据库中可用,赋予用户所有数据库的userAdmin权限
【db: ‘admin’】:可操作的数据库
如果一开始运行容器命令时没有加--auth,则最后再运行下面这行命令,如果一开始加了,就无需再运行该命令
db.auth('xiaoping','123456')