docker+mongodb的安装,密码认证
1.拉取镜像
docker pull mongo:latest
2.运行容器
docker run --name mongodb -p 17017:27017 -v /etc/localtime:/etc/localtime:ro -v /home/devl/mongo/db:/data/db -d mongo --auth
3.进入容器
docker exec -it mongo-master bash
4.创建用户管理员
# 进入mongo数据库
mongo
# 首先切换到admin数据库下use admin;
# 创建一个用户admin, 密码是Hello123# 此用户即为管理员# user: 用户名 # pwd: 密码明文 # role: 用户角色 db: 该用户将创建到哪个数据库中
db.createUser({
user: 'admin',
pwd: 'Hello123',
roles: [{role: 'userAdminAnyDatabase', db: 'admin'}]
});
# 测试下是否正确
db.auth("admin", "Hello123");
1 # 返回1表示正确# 退出exit;
5.创建指定用户
退出容器重新进入
docker exec -it mongo-master mongo admin
#授权登陆admin
db.auth("admin", "Hello123");
#创建访问指定数据库的用户假设我们为 test 库创建一个用户,用户名为 test,密码为 test
use test;
db.createUser({ user: 'test', pwd:'test', roles: [ {role:"readWrite",db:"student"}]});
db.auth("test","test");