docker的使用以及在docker中使用mongodb

docker的使用以及在docker中使用mongodb

参考博客:https://blog.csdn.net/laodengbaiwe0838/article/details/79340818

查看现有镜像

docker images

查看容器状态

docker ps

查看全部的容器

docker ps -a

删除镜像

docker rmi <IMAGE_ID or IMAGE_NAME>

删除镜像有时会显示某容器正在使用该镜像,不能删除,同时会提供对应的容器ID,那么只需要根据容器ID删除容器即可。

docker rm <CONTAINER_ID or CONTAINER_NAME>

使用docker中的mongodb

  1. 先拉取镜像
docker pull mongo
  1. 在镜像拉取之后,就可以创建容器了
docker run --name <container_name> -p 27017:27017 -v <my_own_folder>:/data/db -d mongo:tag
  • <container_name>是自己自定义的容器名称
  • -p 27017:27017 是表示将本机的27017端口号映射到容器中的mongo的27017端口号(mongo默认会将自己的27017端口号暴露出来)
  • mongo:tag 其中mongo表示镜像,tag是我们对应的镜像版本,如果不加的话就是默认的latest.
  • -v <my_own_folder>:/data/db mongo服务启动会默认创建一个用于存储数据的数据库文件/data/db,而该参数会把本地的<my_own_folder>对应的文件夹映射到/data/db,那么mongo中的数据库数据都会保存在本地的<my_own_folder>文件中。
  1. 进入自己创建的容器
docker exec -it <container_name> mongo

然后就会进入mongo的命令行模式,就可以对mongo操作了。

注意:exec命令是进入相应的容器,所以在exec进入之前要保证容器存在且在运行,如果没有该容器就利用之前的docker run命令来创建并运行一个容器,而如有容器已经存在但没有在运行,则要先将其运行起来:

docker start <container_name>

然后再用exec进入即可。

mongodb的认证约束

采用上述创建mongodb的容器默认是没有认证约束的,也就是说该mongo容器没有账号和密码,只要是知道地址和端口号就可以访问进入数据库。

我们就要对数据库添加认证约束:

  1. 在启动容器时添加--auth参数
docker run --name <container_name> -d mongo --auth
  1. 然后进入mongo容器后由mongo命令行添加用户名和密码:
docker exec -it <container_name> mongo admin
db.createUser({user:"username",pwd:"ini_password",roles:[{role:"userAdminAnyDatabase",db:"admin"}]})
  • 2
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值