使用 Docker 安装 MongoDB 社区
您可以通过官方 MongoDB Community 镜像让 MongoDB Community Edition 作为 Docker 容器运行。使用 Docker 镜像来运行您的 MongoDB 部署对于以下方面很有用:
快速构建部署。
帮助管理配置文件。
在多个版本的 MongoDB 上测试不同功能。
关于此任务
本页介绍了 MongoDB Community 版的 Docker 安装说明。建议将 MongoDB Enterprise Docker 映像 和 MongoDB Enterprise Kubernetes Operator 用于生产部署,并且应同时使用。有关 Enterprise 版的说明,请参阅使用 Docker 安装 MongoDB Enterprise 。
此过程将使用官方 MongoDB Community 映像(由 MongoDB 维护)。
对 Docker 的完整描述已超出本文档的范围。本页假定您已了解 Docker。
MongoDB 5.0+ Docker 映像要求系统支持AVX。如果您的系统不支持 AVX,您可以使用版本 5.0 之前的 MongoDB docker 映像。
警告
MongoDB 5.0 之前的版本已停止服务并且不再由 MongoDB 提供支持。这些版本只能用于测试目的。
开始之前
步骤
将映像作为 container 运行
docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:latest
此命令中的 -p 27017:27017
将容器端口映射到主机端口。这样就可以使用 localhost:27017
连接字符串连接 MongoDB。
要安装特定版本的 MongoDB,请在 Docker run 命令中的 :
后面指定版本。Docker 会拉取并运行指定的版本。
例如,要运行 MongoDB 5.0,请执行以下操作:
docker run --name mongodb -p 27017:27017 -d mongodb/mongodb-community-server:5.0-ubuntu2004
有关可用版本的完整列表,请参阅标签。
注意
添加命令行选项
您可以通过将命令行选项附加到 Docker run 命令来使用 mongod 命令行选项。
以 mongod --replSet
Docker 命令行选项为例:
docker run -p 27017:27017 -d mongodb/mongodb-community-server:latest --name mongodb --replSet myReplicaSet
检查 container 正在运行
要检查 Docker container 的状态,请运行以下命令:
docker container ls
ls
命令的输出列出了描述正在运行的 container 的以下字段:
Container ID
Image
Command
Created
Status
Port
Names
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES c29db5687290 mongodb/mongodb-community-server:5.0-ubi8 "docker-entrypoint.s…" 4 seconds ago Up 3 seconds 27017/tcp mongo
验证您的部署
要确认 MongoDB 实例正在运行,请运行 Hello
命令:
db.runCommand( { hello: 1 } )
此命令的结果返回一个描述 mongod
部署的文档:
{ isWritablePrimary: true, topologyVersion: { processId: ObjectId("63c00e27195285e827d48908"), counter: Long("0") }, maxBsonObjectSize: 16777216, maxMessageSizeBytes: 48000000, maxWriteBatchSize: 100000, localTime: ISODate("2023-01-12T16:51:10.132Z"), logicalSessionTimeoutMinutes: 30, connectionId: 18, minWireVersion: 0, maxWireVersion: 20, readOnly: false, ok: 1 }
后续步骤(可选)
可以使用 Cosign 验证 MongoDB 的容器映像签名。
此过程可选。您无需验证 MongoDB 的签名即可在 Docker 或任意其他容器化平台上运行 MongoDB。
如需验证 MongoDB 的容器签名,请执行以下步骤:
下载并安装 Cosign
有关安装说明,请参阅 Cosign GitHub 存储库。