Docker 环境下 MongoDB 一键部署指南:从入门到实战
温馨提示:
本文最后更新于 2025年07月16日,已超过 10 天没有更新。若文章内的图片失效(无法正常加载),请留言反馈或直接联系我。
1. 引言
在微服务和云原生的大潮中,将数据库容器化已成为 DevOps 和后端工程师的标配。借助 Docker,您可以轻松管理 MongoDB 实例、实现多环境一致性,并快速迭代更新。本篇原创文章将带您一步步完成:
- 拉取官方 MongoDB 镜像
- 准备数据与配置目录
- 编写并挂载自定义
mongod.conf
- 运行并持久化 MongoDB 容器
让我们快速上手,打造专业而稳定的数据库部署方案!
2. 准备工作
- 安装 Docker:请先参考 Docker 官方文档 完成安装与基础配置。
- 系统环境:建议使用 Linux 服务器(如 Ubuntu 20.04+),并具有 sudo 权限。
- 路径规划:本文示例中使用
/opt/middlewares/mongo
作为 MongoDB 的宿主机目录。
💡 Tip:合理的目录结构有助于后期备份、监控与权限管理。
3. 拉取官方镜像
使用最新版 MongoDB 镜像,确保获取最新功能与安全补丁:
docker pull mongo:latest
- 镜像来源:Docker Hub –
mongo
官方仓库 - 标签说明:
latest
表示最新稳定版。
📌 延伸阅读:了解更多镜像标签和版本策略,请访问 MongoDB Docker Hub。
4. 创建目录与权限设置
在宿主机上创建配置、数据和日志目录,并赋予合适权限:
mkdir -p /opt/middlewares/mongo/{config,data,logs}
chmod 777 /opt/middlewares/mongo
config
:存放mongod.conf
data
:MongoDB 数据文件(挂载至容器/data/db
)logs
:日志输出目录
⚠️ 生产环境请根据安全策略调整目录权限,不建议长期使用
777
。
5. 编写自定义配置文件
编辑 /opt/middlewares/mongo/config/mongod.conf
,示例内容如下:
# 数据库存储路径
dbpath=/opt/middlewares/mongo/data
# 日志文件路径
logpath=/opt/middlewares/mongo/logs/mongod.log
# 监听端口
port=27017
# 允许所有 IP 连接
bind_ip=0.0.0.0
# 启用日志记录
journal=true
# 后台运行
fork=true
# 启用身份验证(选用)
# auth=true
🔗 外链参考:更多配置项详见 MongoDB 官方配置文档 — mongod Configuration File。
6. 启动并持久化 MongoDB 容器
使用以下命令运行容器,并挂载配置、数据、日志目录,同时设置管理员账户:
docker run -dit --name mongo \
-p 33992:27017 \
-v /opt/middlewares/mongo/config/mongod.conf:/etc/mongod.conf \
-v /opt/middlewares/mongo/data:/data/db \
-v /opt/middlewares/mongo/logs:/var/log/mongodb \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
--restart=always \
mongo --config /etc/mongod.conf
- 端口映射:宿主机
33992
→ 容器27017
- 环境变量:初始化 root 用户
- 重启策略:
--restart=always
,保证服务容器意外退出后自动重启
✅ 验证连接:
mongo --host localhost --port 33992 -u admin -p 123456 --authenticationDatabase admin
7. 后续运维与扩展
- 备份与恢复:使用
mongodump
/mongorestore
或者第三方工具。 - 集群与副本集:可在此基础上扩展 Replica Set 或 Sharding 环境。
- 监控:结合 Prometheus、Grafana 或 MongoDB Cloud Monitoring。
📚 延伸阅读:
8. 总结
通过本文,您已掌握:
- 快速拉取并启动官方 MongoDB Docker 镜像
- 配置持久化存储与日志目录
- 编写并挂载自定义
mongod.conf
- 运行高可用、可复用的 MongoDB 容器
马上动手,体验容器化数据库带来的敏捷和高效吧!如有疑问或建议,欢迎在评论区留言交流。
正文到此结束
- 本文标签: mongodb Linux
- 本文链接: https://code.itptg.com/article/35
- 版权声明: 本文由老魏原创发布,转载请遵循《署名-非商业性使用-相同方式共享 4.0 国际 (CC BY-NC-SA 4.0)》许可协议授权