基础配置
文中的经验来自 Docker Hub 上 mongo 镜像的官方说明,以及对官方 Dockerfile 的分析。一个 docker-compose.yml 就能跑起 mongodb@7,还可以顺带部署官方推荐的 mongo-express 管理工具,不过作者更推荐 MongoDB Compass。
字段解析
逐项说明 image、restart、container_name、ports、environment、volumes 和 command。提供 MONGO_INITDB_ROOT_USERNAME 和 MONGO_INITDB_ROOT_PASSWORD 时,容器会创建 root 用户并以 --auth 模式运行;这两个值放在同级的 .env 文件里,不写死在配置中。
持久化与自定义配置
root 用户生成后会随数据卷固定下来,想彻底重置需要先删除挂载的数据目录。挂载 /etc/mongo 可以使用自定义的 mongod.conf,command 可以替换默认启动命令,比如用 --wiredTigerCacheSizeGB 设置缓存大小。