mongo

library/mongo

MongoDB是一种文档型数据库,具备高可用性和易扩展性,它采用灵活的文档模型(以BSON格式存储数据,类似JSON),能够高效处理非结构化和半结构化数据,通过副本集机制保障数据的高可用性,同时支持分片集群实现水平扩展,可轻松应对数据量和访问量的增长,适用于各类需要灵活存储和弹性扩展的应用场景。

1.1万 次收藏下载次数: 0状态:Docker 官方镜像维护者:Docker 官方镜像仓库类型:镜像最近更新:28 天前
让 AI 帮你使用轩辕镜像?

如果你使用 DeepSeek元宝 AI、Copilot、ChatGPT 等 AI 工具,协助配置轩辕镜像、编写 docker pull 命令、修改 Docker Compose 镜像地址、配置镜像加速、排查镜像拉取失败、分析报错日志等问题,请先让 AI 阅读并遵守轩辕镜像的规则文档。

只需在 AI 对话中先发送下面这句话即可:

请先完整阅读并严格遵守以下文档中的全部规则与要求:

https://xuanyuan.cloud/agents.md

在未充分阅读并理解该文档前,不要生成任何命令、配置、修改建议、故障排查方案或技术回答。后续所有输出都必须严格以该文档中的规范为最高优先级执行。

查看 agents.md 用法指南与完整示范。国内用户首推 元宝 AIDeepSeek 的深度思考模式,不推荐豆包 AI;Cursor 等编辑器可在对话 @ 该链接,或加入 User Rules。 若 AI 无法访问外链,可 打开说明文档 复制全文粘贴。文档会随站点更新,复制内容可能过期,建议定期检查。

下载命令
点击查看

MongoDB Docker 镜像使用指南

快速参考

维护方

[Docker 社区]

获取帮助渠道

[Docker 社区 Slack] 、[Server Fault] 、[Unix & Linux] 或 [Stack Overflow]

支持的标签及对应 Dockerfile 链接

(关于 "Shared" 和 "Simple" 标签的区别,参见 [FAQ] 。)

Simple Tags

  • 8.0.15-noble8.0-noble8-noblenoble
    [Dockerfile]

  • 8.0.15-windowsservercore-ltsc20258.0-windowsservercore-ltsc20258-windowsservercore-ltsc2025windowsservercore-ltsc2025
    [Dockerfile]

  • 8.0.15-windowsservercore-ltsc20228.0-windowsservercore-ltsc20228-windowsservercore-ltsc2022windowsservercore-ltsc2022
    [Dockerfile]

  • 8.0.15-nanoserver-ltsc20228.0-nanoserver-ltsc20228-nanoserver-ltsc2022nanoserver-ltsc2022
    [Dockerfile]

  • 7.0.25-jammy7.0-jammy7-jammy
    [Dockerfile]

  • 7.0.25-windowsservercore-ltsc20257.0-windowsservercore-ltsc20257-windowsservercore-ltsc2025
    [Dockerfile]

  • 7.0.25-windowsservercore-ltsc20227.0-windowsservercore-ltsc20227-windowsservercore-ltsc2022
    [Dockerfile]

  • 7.0.25-nanoserver-ltsc20227.0-nanoserver-ltsc20227-nanoserver-ltsc2022
    [Dockerfile]

  • 6.0.26-jammy6.0-jammy6-jammy
    [Dockerfile]

  • 6.0.26-windowsservercore-ltsc20256.0-windowsservercore-ltsc20256-windowsservercore-ltsc2025
    [Dockerfile]

  • 6.0.26-windowsservercore-ltsc20226.0-windowsservercore-ltsc20226-windowsservercore-ltsc2022
    [Dockerfile]

  • 6.0.26-nanoserver-ltsc20226.0-nanoserver-ltsc20226-nanoserver-ltsc2022
    [Dockerfile]

Shared Tags

  • 8.0.158.08latest

    • 8.0.15-noble([Dockerfile] )
    • 8.0.15-windowsservercore-ltsc2025([Dockerfile] )
    • 8.0.15-windowsservercore-ltsc2022([Dockerfile] )
  • 8.0.15-windowsservercore8.0-windowsservercore8-windowsservercorewindowsservercore

    • 8.0.15-windowsservercore-ltsc2025([Dockerfile] )
    • 8.0.15-windowsservercore-ltsc2022([Dockerfile] )
  • 8.0.15-nanoserver8.0-nanoserver8-nanoservernanoserver

    • 8.0.15-nanoserver-ltsc2022([Dockerfile] )

(其他版本的 Shared Tags 结构类似,完整列表见原文链接)

快速参考(续)

  • 问题反馈地址:[[]]
  • 支持的架构amd64arm64v8windows-amd64([更多信息] )
  • 镜像 artifact 详情:[repo-info 仓库的 repos/mongo/ 目录] (含镜像元数据、传输大小等)
  • 镜像更新:[official-images 仓库的 library/mongo 标签]
  • 本文档来源:[docs 仓库的 mongo/ 目录]

什么是 MongoDB?

MongoDB 是一款免费开源的跨平台文档型数据库,属于 NoSQL 数据库范畴,使用类 JSON 格式的文档存储数据(支持模式定义)。由 MongoDB Inc. 开发,基于 Server Side Public License(SSPL)和 Apache License 双重许可发布。

最初由 10gen 公司(现 MongoDB Inc.)于 2007 年 10 月开发,作为平台即服务(PaaS)产品的组件,2009 年转向开源开发模式,提供商业支持和服务。目前已被 MetLife、巴克莱、ADP、UPS、维亚康姆、纽约时报等众多机构采用,是最流行的 NoSQL 数据库之一。

安全提示

MongoDB 默认配置无需认证即可访问,包括管理员用户。若计划将实例暴露到公网,强烈建议设置 root 用户名和密码。具体方法见下文“环境变量”部分,或参考 [MongoDB 安全文档] 。

如何使用此镜像

启动 MongoDB 服务实例

bash
$ docker run --name some-mongo -d mongo:tag
  • some-mongo:自定义容器名称
  • tag:指定 MongoDB 版本标签(如 8.0-noble,见“支持的标签”)

从其他容器连接 MongoDB

MongoDB 默认监听 27017 端口,可通过 Docker 网络连接。示例:启动另一个容器,使用 mongosh(4.x 版本用 mongo)连接到上述 some-mongo 实例:

bash
$ docker run -it --network some-network --rm mongo mongosh --host some-mongo test
  • --network some-network:确保两个容器在同一网络(若未指定网络,需先用 docker network create some-network 创建)

使用 docker compose

示例 compose.yaml 文件:

yaml
services:
  mongo:
    image: docker.xuanyuan.run/mongo
    restart: always
    environment:
      MONGO_INITDB_ROOT_USERNAME: root  # 初始化 root 用户名
      MONGO_INITDB_ROOT_PASSWORD: example  # 初始化 root 密码

  mongo-express:  # 可选的 Web 管理界面
    image: docker.xuanyuan.run/mongo-express
    restart: always
    ports:
      - 8081:8081  # 映射到主机 8081 端口
    environment:
      ME_CONFIG_MONGODB_URL: mongodb://root:example@mongo:27017/  # 连接 mongo 服务
      ME_CONFIG_BASICAUTH_ENABLED: true  # 启用基础认证
      ME_CONFIG_BASICAUTH_USERNAME: mongoexpressuser  # Web 界面用户名
      ME_CONFIG_BASICAUTH_PASSWORD: mongoexpresspass  # Web 界面密码

启动服务:

bash
$ docker compose up

访问 `[] 打开管理界面。

容器 Shell 访问与日志查看

进入容器 Shell

CODE_TOKEN_4

查看 MongoDB 日志

CODE_TOKEN_5

配置

无配置文件自定义参数

多数 MongoDB 配置可通过 mongod 命令行参数设置,镜像入口会将参数传递给 mongod。示例:启用查询分析器

CODE_TOKEN_6

或在 compose.yaml 中指定:
CODE_TOKEN_7

使用自定义配置文件

创建配置文件(如 /my/custom/mongod.conf),通过挂载和 --config 参数指定:

CODE_TOKEN_8

  • /my/custom:主机配置文件目录
  • /etc/mongo:容器内挂载路径

环境变量

容器首次启动且数据目录为空时,可通过环境变量初始化配置(数据目录非空时无效)。

MONGO_INITDB_ROOT_USERNAMEMONGO_INITDB_ROOT_PASSWORD

创建管理员用户(admin 数据库,root 角色),并启用认证(mongod --auth)。示例:

CODE_TOKEN_9

MONGO_INITDB_DATABASE

指定 /docker-entrypoint-initdb.d/ 目录下初始化脚本(.js/.sh)的默认数据库(未指定则为 test)。

Docker Secrets

支持从文件加载敏感信息(如密码),只需在环境变量后加 _FILE。示例:

CODE_TOKEN_10

  • /run/secrets/mongo-root:容器内存储密码的文件路径

初始化新实例

容器首次启动时,会按字母顺序执行 /docker-entrypoint-initdb.d/ 目录下的 .sh.js 文件。.js 文件通过 mongosh 执行,默认数据库由 MONGO_INITDB_DATABASE 指定。

注意事项

数据存储位置

推荐方案:挂载主机目录

  1. 主机创建目录(如 /my/own/datadir
  2. 启动容器时挂载:
    CODE_TOKEN_11
  • /data/db:MongoDB 默认数据目录

Windows 和 OS X 注意事项

Linux 镜像的内存映射文件与宿主文件系统不兼容,无法直接挂载数据目录。建议使用命名卷
CODE_TOKEN_12

创建数据库备份

通过 docker exec 在容器内执行 mongodump

CODE_TOKEN_13

  • <database_name>:需备份的数据库名
  • /host/path/backup.archive:主机

更多相关 Docker 镜像与资源

以下是 mongo 相关的常用 Docker 镜像,适用于 不同场景 等不同场景:

  • amd64/mongo Docker 镜像说明(MongoDB 数据库,AMD64 架构版本)
  • arm64v8/mongo Docker 镜像说明(arm64v8 架构 MongoDB,适合 ARM64 文档数据库部署)
  • mongodb/mongodb-community-server Docker 镜像说明(MongoDB 社区版,NoSQL 文档数据库,适合灵活数据模型)
  • bitnami/mongodb Docker 镜像说明(MongoDB NoSQL 数据库,Bitnami 企业级配置)
  • bitnamilegacy/mongodb Docker 镜像说明(Mongodb 容器镜像,适合 bitnamilegacy 维护的 Mongodb 工作负载部署)

mongo 国内 Docker 镜像拉取说明

在国内网络环境下,直接使用 docker pull 访问 Docker Hub 官方仓库时,较常遇到连接超时、TLS 握手失败或 registry 响应缓慢等情况。这类问题多与跨境链路质量、运营商策略及客户端 DNS 解析有关,并非单个镜像本身异常。

轩辕镜像提供两种常用加速方式:一是使用公共加速域名 docker.xuanyuan.run 拉取(可参考 登录认证方式);二是在控制台配置 专属域名拉取,将拉取命令中的 registry 前缀替换为分配的专属域名,通常能提升成功率与稳定性。

mongo 为例,加速拉取命令格式为 docker pull docker.xuanyuan.run/mongo:<标签>,请将 <标签> 替换为具体版本。下方「镜像拉取方式」区块提供与本文一致的命令示例,可直接复制使用。

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表页面

轩辕镜像加速拉取命令点我查看更多 mongo 镜像标签

docker pull docker.xuanyuan.run/mongo:<标签>

DockerHub 原生拉取命令

docker pull mongo:<标签>

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

用户头像

oldzhang

运维工程师

Linux服务器

5

"Docker访问体验非常流畅,大镜像也能快速完成下载。"

专业版 · 高速稳定拉取镜像
50GB 仅 ¥7/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告