tutum-docker-mongodb是一个用于运行MongoDB数据库服务器的基础Docker镜像。不同版本的MongoDB从不同文件夹构建,推荐使用官方维护的tutum/mongodb镜像(https://github.com/tutumcloud/tutum-docker-mongodb%EF%BC%89%E3%80%82
适用于需要快速部署MongoDB数据库的开发、测试或生产环境,支持灵活配置以满足不同安全需求(如密码认证)和性能要求(如存储引擎选择)。
在tutum-mongodb目录下执行以下命令构建镜像(以2.6版本为例):
dockerdocker build -t tutum/mongodb 2.6/ .
基本运行
执行以下命令启动MongoDB容器:
dockerdocker run -d -p 27017:27017 -p 28017:28017 tutum/mongodb
获取随机密码
首次运行容器时,会自动生成随机管理员密码。通过容器日志获取密码:
dockerdocker logs <CONTAINER_ID>
日志输出示例:
======================================================================== You can now connect to this MongoDB server using: mongo admin -u admin -p 5elsT6KtjrqV --host <host> --port <port> Please remember to change the above password as soon as possible! ========================================================================
使用生成的密码连接MongoDB:
dockermongo admin -u admin -p 5elsT6KtjrqV
设置管理员密码
通过MONGODB_PASS环境变量预设管理员密码:
dockerdocker run -d -p 27017:27017 -p 28017:28017 -e MONGODB_PASS="mypass" tutum/mongodb
验证密码:
dockermongo admin -u admin -p mypass # 或通过HTTP接口验证 curl --user admin:mypass --digest http://localhost:28017/
创建特定用户和数据库
通过环境变量MONGODB_USER(用户名)、MONGODB_DATABASE(数据库名)和MONGODB_PASS(密码)创建自定义用户及数据库:
dockerdocker run -d -p 27017:27017 -p 28017:28017 -e MONGODB_USER="user" -e MONGODB_DATABASE="mydatabase" -e MONGODB_PASS="mypass" tutum/mongodb
验证凭据:
dockermongo mydatabase -u user -p mypass
注意:MongoDB 3.x及以上版本会同时创建具有相同凭据的管理员用户,可通过
mongo admin -u user -p mypass连接。
禁用密码认证
通过AUTH环境变量禁用密码认证(默认值为"yes",即启用认证):
dockerdocker run -d -p 27017:27017 -p 28017:28017 -e AUTH=no tutum/mongodb
指定存储引擎
MongoDB 3.0及以上版本支持通过STORAGE_ENGINE环境变量指定存储引擎(默认值为"wiredTiger"):
dockerdocker run -d -p 27017:27017 -p 28017:28017 -e AUTH=no -e STORAGE_ENGINE=mmapv1 tutum/mongodb:3.0
调整Oplog大小
MongoDB 3.0及以上版本支持通过OPLOG_SIZE环境变量指定oplog大小(单位:MB):
dockerdocker run -d -p 27017:27017 -p 28017:28017 -e AUTH=no -e OPLOG_SIZE=50 tutum/mongodb:3.0
默认行为:MongoDB默认分配可用磁盘空间的5%作为oplog,最小1GB,最大50GB。
来源:[*]
探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式
通过 Docker 登录认证访问私有仓库
无需登录使用专属域名
Kubernetes 集群配置 Containerd
K3s 轻量级 Kubernetes 镜像加速
VS Code Dev Containers 配置
Podman 容器引擎配置
HPC 科学计算容器配置
ghcr、Quay、nvcr 等镜像仓库
Harbor Proxy Repository 对接专属域名
Portainer Registries 加速拉取
Nexus3 Docker Proxy 内网缓存
需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单
manifest unknown
no matching manifest(架构)
invalid tar header(解压)
TLS 证书失败
DNS 超时
410 Gone 排查
402 与流量用尽
401 认证失败
429 限流
D-Bus 凭证提示
413 与超大单层
来自真实用户的反馈,见证轩辕镜像的优质服务