Docker 安装 MongoDB

Docker 安装 MongoDB

MongoDB 是一个免费的开源跨平台面向文档的 NoSQL 数据库程序。

1、查看可用的 MongoDB 版本

访问 MongoDB 镜像库地址: https://hub.docker.com/_/mongo?tab=tags&page=1&ordering=last_updated&name=latest。

可以通过 Sort by 查看其他版本的 MongoDB,默认是最新版本 mongo:latest

image

可以在下拉列表中找到其他你想要的版本:

image

此外,我们还可以用 docker search mongo 命令来查看可用版本:

docker search mongo
NAME                                DESCRIPTION                                     STARS     OFFICIAL   AUTOMATED
mongo                               MongoDB document databases provide high avai…   8013      [OK]       
mongo-express                       Web-based MongoDB admin interface, written w…   995       [OK]       
tutum/mongodb                       MongoDB Docker image – listens in port 27017…   229                  [OK]
frodenas/mongodb                    A Docker Image for MongoDB                      18                   [OK]
webhippie/mongodb                   Docker images for MongoDB                       10                   [OK]
centos/mongodb-32-centos7           MongoDB NoSQL database server                   9                    
centos/mongodb-36-centos7           MongoDB NoSQL database server                   7                    
centos/mongodb-26-centos7           MongoDB NoSQL database server                   5                    
eses/mongodb_exporter               mongodb exporter for prometheus                 4                    [OK]
neowaylabs/mongodb-mms-agent        This Docker image with MongoDB Monitoring Ag…   4                    [OK]
centos/mongodb-34-centos7           MongoDB NoSQL database server                   3                    
zadki3l/mongodb-oplog               Simple mongodb image with single-node replic…   2                    [OK]
tozd/mongodb                        Base image for MongoDB server.                  2                    [OK]
elarasu/mongodb_exporter            https://github.com/percona/mongodb_exporter     2                    [OK]
ssalaues/mongodb-exporter           MongoDB Replicaset Prometheus Compatible Met…   2                    
mongodbsap/mongodbdocker                                                            2                    
ansibleplaybookbundle/mongodb-apb   An APB to deploy MongoDB.                       1                    [OK]
xogroup/mongodb_backup_gdrive       Docker image to create a MongoDB database ba…   1                    [OK]
openshift/mongodb-24-centos7        DEPRECATED: A Centos7 based MongoDB v2.4 ima…   1                    
superpaintman/mongodb-exporter      MongoDB exporter for prometheus.io, written …   1                    [OK]
tiredofit/mongodb-backup             Docker MongoDB Backup Container based on Al…   0                    [OK]
weseek/mongodb-awesome-backup       Backup scripts of MongoDB Databases to Amazo…   0                    [OK]
gebele/mongodb                      mongodb                                         0                    [OK]
targetprocess/mongodb_exporter      MongoDB exporter for prometheus                 0                    [OK]
phenompeople/mongodb                 MongoDB is an open-source, document databas…   0                    [OK]

image

2、拉取最新版的 MongoDB 镜像

这里我们拉取官方的最新版本的镜像:

docker pull mongo:latest

Using default tag: latest
latest: Pulling from library/mongo
16ec32c2132b: Pull complete 
6335cf672677: Pull complete 
cbc70ccc8ebe: Pull complete 
0d1a3c6bd417: Pull complete 
960f3b9b27d3: Pull complete 
aff995a136b4: Pull complete 
4249be7550a8: Pull complete 
4da411c5a406: Pull complete 
4b9c6ac629be: Pull complete 
4de7437f497e: Pull complete 
Digest: sha256:d78c7ace6822297a7e1c7076eb9a7560a81a6ef856ab8d9cde5d18438ca9e8bf
Status: Downloaded newer image for mongo:latest
docker.io/library/mongo:latest

image

3、查看本地镜像

使用以下命令来查看是否已安装了 mongo

docker images

image

在上图中可以看到我们已经安装了最新版本(latest)的 mongo 镜像。

4、运行容器

安装完成后,我们可以使用以下命令来运行 mongo 容器:

docker run -itd --name mongo --restart=unless-stopped  -v /usr/local/mongodb:/usr/local/mongdb -v /usr/local/docker/mongodb/mongo.conf:/data/configdb/mongo.conf -p 27017:27017 mongo --auth

参数说明:

  • -p 27017:27017 :映射容器服务的 27017 端口到宿主机的 27017 端口。外部可以直接通过 宿主机 ip:27017 访问到 mongo 的服务。
  • --auth:需要密码才能访问容器服务。

image

5、安装成功

最后我们可以通过 docker ps 命令查看容器的运行信息:

image

接着使用以下命令添加用户和设置密码,并且尝试连接。

docker exec -it mongo mongo admin
# 创建一个名为 admin,密码为 123456 的用户。
>  db.createUser({ user:'admin',pwd:'123456',roles:[ { role:'userAdminAnyDatabase', db: 'admin'},"readWriteAnyDatabase"]});
# 尝试使用上面创建的用户信息进行连接。
> db.auth('admin', '123456')

image

posted @ 2022-01-13 14:34  婷婷~玉立  阅读(9)  评论(0编辑  收藏  举报