如何使用Docker安装一个MongoDB最新版

2020-07-07 11:01:13于丽

1 安装

本文假设大家已经安装好了docker并能正常使用,所以不讲解如何安装docker了。用docker安装MongoDB最新版本如下:

# 从repository查找mongo的相关镜像,结果很多,其中第一条为官方的镜像
$ docker search mongo
# 下载官方镜像的最新版本
$ docker pull mongo:latest
# 完成后,检查是否下载成功
$ docker images
REPOSITORY   TAG     IMAGE ID   CREATED    SIZE
centos    7     5e35e350aded  12 days ago   203MB
mongo    latest    965553e202a4  3 weeks ago   363MB
hello-world   latest    fce289e99eb9  10 months ago  1.84kB

仅需要简单几个命令,我们就拥有了MongoDB的最新镜像了,后续就可以使用了。

2 启动

完成MongoDB的镜像下载后,启动就非常简单了,一个命令即可:

$ docker run -itd --name mongo -p 27017:27017 mongo --auth
305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

(1)--name后面的参数为docker容器名;

(2)-p后面是端口映射,即宿主端口:容器端口

(3)--auth是否开始鉴权,如果不想开启可以去掉;

成功启动MongoDB一个实例后,会返回容器ID,如305ebd8236678905d16dd76e75dcf99fdd812be6b13c240acece7985d29b316c

通过命令docker ps可以查看正在运行的容器,经过检查,确实已经起来了。

注意:默认数据是存在容器系统的/data/db目录下的,如果需要使用自定义的宿主机器目录,可以在启动命令加上参数:

-v /my/own/datadir:/data/db

3 创建用户与集合

3.1 进入容器

容器起来后,下一步是进入容器:

# 进入容器可以用以下两种方法
# 分别是通过容器名和容器ID
$ docker exec -it mongo bash
$ docker exec -it 305ebd823667 bash

上面进入容器后,其实是进入了容器的系统,并打开bash

3.2 通过客户端命令连接数据库

接着通过mongo命令连接到MongoDB的数据库服务。

# 默认连接本地的27017端口的MongoDB
$ mongo
# 指定IP与端口进行连接
$ mongo 127.0.0.1:27017
# 指定用户名和密码连接到指定的MongoDB数据库
$ mongo 127.0.0.1:27017/admin -u user -p password

连接数据库成功后,会返回一些信息,如SeesionID和版本号等。

3.3 查看版本

(1)在linux命令通过mongo --version查询;

(2)连接上数据库后,通过db.version()查询。

root@305ebd823667:/# mongo --version
MongoDB shell version v4.2.1
git version: edf6d45851c0b9ee15548f0f847df141764a317e
OpenSSL version: OpenSSL 1.1.1 11 Sep 2018

root@305ebd823667:/# mongo
> db.version()
4.2.1

3.4 创建admin管理用户