Docker安装Mongodb

使用docker-hub的mongodb 4.0镜像

首先搜索并拉取4.0的镜像

~# docker search mongo
~# docker pull mongo:4.0

拉取完成后使用docker images查看发现镜像,然后使用docker run启动docker服务

~# docker images
REPOSITORY                 TAG                 IMAGE ID            CREATED             SIZE
mongo                      4.0                 1bc58f3232ec        5 weeks ago         413MB
~# docker run -p 27017:27017 -v $PWD/db:/data/db -d mongo:4.0 --auth
~# docker ps -a
CONTAINER ID        IMAGE               COMMAND                  CREATED             STATUS                       PORTS                             NAMES
795627661c81        mongo:4.0           "docker-entrypoint.s…"   17 seconds ago      Up 11 seconds                0.0.0.0:27017->27017/tcp          loving_rubin

使用docker exec进入mongodb,然后创建admin用户,创建成功后执行exit退出docker虚拟机

~# docker exec -it 795627661c81  mongo admin
> db.createUser({ user: 'admin', pwd: 'adminpassword', roles: [ { role: "userAdminAnyDatabase", db: "admin" }]});
Successfully added user: {
	"user" : "admin",
	"roles" : [
		{
			"role" : "userAdminAnyDatabase",
			"db" : "admin"
		}
	]
}
> exit

使用admin账户密码登录mongo,切换到指定db, 创建用户拥有当前db的读写权限,成功后exit退出

~# docker exec -it 795627661c81  mongo -u admin -p adminpassword --authenticationDatabase admin
> db
test
> db.createUser( { "user" : "user1",
                 "pwd": "user1pwd1",
                 "customData" : { employeeId: 12345 },
                 "roles" : [ { role: "clusterAdmin", db: "admin" },
                             { role: "readAnyDatabase", db: "admin" },
                             "readWrite"
                             ] },
               { w: "majority" , wtimeout: 5000 } )
> exit

使用刚才创建的用户登录指定db

~# docker exec -it 795627661c81  mongo -u user1 -p user1pwd1 --authenticationDatabase test
> db
test
> db.textcollections.insert({"node": "web"})
WriteResult({ "nInserted" : 1 })
> db.textcollections.find()
{ "_id" : ObjectId("5d8375d9273b5553825b9bd0"), "node" : "web" }
>
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值