Centos7-Docker下安装mongodb:
Ps:本文参考自:在centos7上使用 docker安装mongodb挂载宿主机以及创建其数据库的用户名和密码(最新版本) - 流走在黑夜深巷的猫 - 博客园
在centos7上使用 docker安装mongodb挂载宿主机以及创建其数据库的用户名和密码(最新版本)
因为博主在使用docker安装mongodb并挂载时,发现在网上搜了好多都是以前版本的mongodb,并且按照他们操作总是在进入mongodb出问题,博主搞了好久终于弄好了,故写下博客,供有需要的的人参考。博主安装和官网有些区别,想看官网快速搭建的——>[Mongodb官网快速指南]<——(https://www.mongodb.com/docs/manual/tutorial/install-mongodb-community-with-docker/ “Mongodb官网快速指南”)废话不多说开搞!
一、安装mongodb
1.1查看版本(不想看版本的,这一步可以跳过)
docker search mongo |

1.2拉取mongodb镜像
默认下载最新版本(也就是latest) |

1.3.查看本地已下载镜像,并查看是否下载mongo镜像
docker image ls -a |

1.4.在宿主机上挂载并运行
# 1.4.1首先创建一个要挂载的文件(这里-p后面的文件地址就写你自己想要创建的) |
在上面的命令中,几个命令参数的详细解释如下:-p 映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务-v 为设置容器的挂载目录,这里是将本机的“/data/docker_volume/mongo/data”目录挂载到容器中的/data/db中,作为 mongodb 的存储目录--name 为设置该容器的名称-d 设置容器以守护进程方式运行(后台运行)–auth 需要验证就加,不需要验证,就去掉。默认mongodb是不使用用户认证
1.5.设置mongodb随docker自启动(这一步可加可不加,看你个人)
docker update mymongo --restart=always |
注意:这里的mymongo是容器的名字(上面1.4.2哪里运行容器--name后起的名字),不是镜像的名字。
二、创建其数据库的用户名和密码
①如果你不需要设置用户和密码,下面就不用看了,直接可以连接mongo了(这种就像是裸奔不安全)
②如果你在上面 容器运行挂载选择需验证方式(在1.4.2处)
2.2.1 首先 登录mymongo容器,进入admin数据库
docker exec -it mymongo mongosh admin |

2.2.2 然后 按照 2.3.4步骤往下走
③其余的就往下看
2.3.1.进入mongo容器
docker exec -it mymongo /bin/bash |

注意:这里的mymongo是容器的名字,不是镜像的名字。(忘记容器名字,可使用docker ps -a 查看容器名)
2.3.2.进入mongosh中
# 进入mongo shell |
注:mongosh 6.0版本之后使用,mongo 6.0版本之前使用,博主就是在这里出问题的,博主安装最新mongodb版本,但是使用的是 mongo 所以一直出现问题:bash: mongo: command not found

2.3.3.进入admin数据库
use admin |

2.3.4 创建一个用户,mongodb默认没有用户
# 1.这里创建用户名为root,密码为mongo2023,角色(该用户的权限)为root,数据库为admin(你们按照你们自己的设置) |

到这里就完成了创建用户和设置密码,如果要退出 Ctrl+D 或者 exit 退出mongodb
三、客户端连接mongodb
如果刚才的安装是在服务器上,想远程连接mongodb还请先查看服务器端口27017放行(对外开放这个端口)