在Docker中安装MongoDB
1.版本选取
访问mongodb的镜像仓库地址:
https://hub.docker.com/_/mongo?tab=tags&page=1

这里选取最新版本进行安装,如果想安装其他的可用版本,可以使用命令“docker search mongo”来查看

2.拉取最新版本镜像
这里执行命令"sudo docker pull mongo:latest" 拉取最新版的mongodb镜像文件

等待镜像拉取完成后,通过命令"sudo docker images"查看下拉取的镜像,可以看到,已经成功拉取到了本地

3.开始运行
创建一个文件夹,用作mongodb的数据目录挂载

运行启动命令“docker run -p 27017:27017 -v /data/mongo:/data/db --name mongodb -d mongo”

在上面的命令中,几个命令参数的详细解释如下:
-p 映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务
-v 为设置容器的挂载目录,这里是将本机的“/data/mongo”目录挂载到容器中的/data/db中,作为 mongodb 的存储目录
--name 为设置该容器的名称
-d 设置容器以守护进程方式运行
通过命令“docker ps”查看容器启动运行情况

可以看到mongo容器已经成功运行起来了
4.使用客户端工具Studio 3T连接mongo
studiot 3T下载地址:
https://studio3t.com/download/


5.创建mongo用户
可以看到一个空的mongo数据库,有一个不太完美的地方在于我们的mongo没有任何账户密码,在裸奔,下面我们执行以下语句,创建一个管理员用户,
1
2
3
4
5
|
db.createUser({
user:
'admin'
,
pwd:
'Aa123456'
,
roles: [ { role:
"userAdminAnyDatabase"
, db:
"admin"
} ]
});
|

6.指定auth重新运行服务
创建完用户我们就要重新启动mongo服务,并且指定auth
删除已经运行的mongo容器:docker rm -f mongodb
指定验证启动mongo容器:docker run -p 27017:27017 -v /data/mongo:/data/db --name mongodb -d mongo --auth
也就是在之前的启动命令后面加上 --auth:需要密码才能访问容器服务
此时强行访问,可以看到提示,没有授权

这里我们在连接的地方指定一下账户密码

再来查询,已经正确查询出来之前添加的用户信息

7.创建一个业务数据库和对应的读写账户
1
2
3
4
5
6
|
use demo_db;
db.createUser({
user:
'dev'
,
pwd:
'Aa123456'
,
roles: [ { role:
"readWrite"
, db:
"demo_db"
} ]
});
|

然后用这个dev账号来登录

皮豆设计(logo设计神器):
http://pidou.cn
来源链接:https://www.cnblogs.com/gaidy/p/13606626.html
版权声明:
1、JavaClub(https://www.javaclub.cn)以学习交流为目的,由作者投稿、网友推荐和小编整理收藏优秀的IT技术及相关内容,包括但不限于文字、图片、音频、视频、软件、程序等,其均来自互联网,本站不享有版权,版权归原作者所有。
2、本站提供的内容仅用于个人学习、研究或欣赏,以及其他非商业性或非盈利性用途,但同时应遵守著作权法及其他相关法律的规定,不得侵犯相关权利人及本网站的合法权利。
3、本网站内容原作者如不愿意在本网站刊登内容,请及时通知本站(javaclubcn@163.com),我们将第一时间核实后及时予以删除。