一、准备工作
确保你已经安装并启动了 Docker。
powershell
docker -v
能看到版本号说明 Docker 正常运行。

二、拉取 MongoDB 镜像
建议指定一个稳定的版本,例如 6.0,不推荐直接使用 latest。
powershell
docker pull mongo:6.0
三、创建数据持久化目录(重要)
为了防止容器重启后数据丢失,需要在宿主机创建一个目录映射到容器内部。
powershell
mkdir -p /Users/mac/docker/mongodb/data
四、运行 MongoDB 容器
执行以下命令启动一个 MongoDB 实例:
powershell
docker run -d \
--name mongodb \
-p 27017:27017 \
-v /Users/mac/docker/mongodb/data:/data/db \
mongo:6.0
参数说明:
- -d:后台运行容器。
- --name mongodb:给容器命名为 mongodb。
- -p 27017:27017:将宿主机的 27017 端口映射到容器的 27017 端口。
- -v /Users/mac/docker/mongodb/data:/data/db:挂载数据卷,实现数据持久化。

五、验证 MongoDB 是否运行成功
1️⃣ 查看容器运行状态
powershell
docker ps
如果能看到名为 mongodb的容器且状态为 Up,说明启动成功。
2️⃣ 进入容器内部使用命令行
powershell
docker exec -it mongodb mongosh
执行后,如果进入了 MongoDB 的交互式命令行(显示 test>),说明数据库完全就绪。

六、设置用户名和密码(生产环境必做)
如果你需要账号密码认证,可以使用以下命令运行容器:
powershell
docker run -d \
--name mongodb \
-p 27017:27017 \
-v /Users/mac/docker/mongodb/data:/data/db \
-e MONGO_INITDB_ROOT_USERNAME=admin \
-e MONGO_INITDB_ROOT_PASSWORD=123456 \
mongo:6.0
- -e MONGO_INITDB_ROOT_USERNAME:设置超级管理员用户名。
- -e MONGO_INITDB_ROOT_PASSWORD:设置对应的密码。
七、连接字符串示例
在你的应用程序(如 Node.js、Python)中,可以使用以下格式的 URI 进行连接:
powershell
无密码:
mongodb://localhost:27017
有密码:
mongodb://admin:123456@localhost:27017/?authSource=admin
八、常用运维命令
powershell
停止容器docker stop mongodb
启动容器docker start mongodb
重启容器docker restart mongodb
查看日志docker logs -f mongodb
删除容器docker rm -f mongodb