Docker 安装 MongoDB 创建用户

1. 下载 MongoDB 镜像

docker pull mongo

2. 运行容器

docker run -p 27017:27017 --name docker_mongodb -v /mongodb_data/:/data/db -it -d mongo --auth
  • -v:将宿主机 /mongodb_data 目录挂载到容器中的 /data/db 中,此目录为 MongoDB 数据存储位置
  • -d:设置容器以守护进程方式运行
  • -p:宿主机 27017 端口映射到容器 27017 端口

3. 查看容器运行情况

docker ps -a
CONTAINER ID        IMAGE                   COMMAND                  CREATED             STATUS                    PORTS                                NAMES
71351dc5b914        mongo                   "docker-entrypoint.s…"   15 hours ago        Up 15 hours               0.0.0.0:27017->27017/tcp             docker_mongodb

4. 进入 MongoDB 容器,添加用户以及测试数据

  • 进入容器
docker exec -it docker_mongodb bash
  • 容器内连接mongo
root@71351dc5b914:/# mongo
  • admin 库添加用户 root,角色:userAdminAnyDatabase
> use admin
switched to db admin
> db.createUser({ user: "root", pwd: "rootpassword", roles: [{ role: "userAdminAnyDatabase", db: "admin" }] })
Successfully added user: {
        "user" : "root",
        "roles" : [
                {
                        "role" : "userAdminAnyDatabase",
                        "db" : "admin"
                }
        ]
}
  • 新建数据库 my,添加用户 user1,角色:dbOwner
> use my
switched to db my
> db.createUser({user:"user1",pwd:"password",roles:[{role:"dbOwner",db:"my"}]})
Successfully added user: {
        "user" : "user1",
        "roles" : [
                {
                        "role" : "dbOwner",
                        "db" : "my"
                }
        ]
}
  • 使用 用户user1 在my数据库添加测试数据
> use my
switched to db my
> db.auth("user1","password")
1
> db.address.insert({name:"daodao",address:"hangzhou"})
WriteResult({ "nInserted" : 1 })
发布了6 篇原创文章 · 获赞 0 · 访问量 90

猜你喜欢

转载自blog.csdn.net/baidu_33722511/article/details/105577356
今日推荐