使用 Docker Compose 快速安装 MongoDB

一、准备工作

  1. 确保你的服务器/电脑已安装 DockerDocker Compose
  2. 创建一个专用文件夹(方便管理):
bash 复制代码
mkdir mongodb && cd mongodb

二、创建 docker-compose.yml 配置文件

mongodb 文件夹下创建 docker-compose.yml 文件,复制以下配置(支持用户名密码认证、数据持久化、端口映射):

yaml 复制代码
services:
  mongodb:
    # 官方MongoDB镜像
    image: mongo:latest
    # 容器名称
    container_name: mongodb
    # 重启策略:开机自启
    restart: always
    # 环境变量(配置用户名密码)
    environment:
      # 管理员用户名(自行修改)
      MONGO_INITDB_ROOT_USERNAME: admin
      # 管理员密码(务必修改为强密码)
      MONGO_INITDB_ROOT_PASSWORD: 123456
      # 初始化数据库名称
      MONGO_INITDB_DATABASE: admin
    # 端口映射:主机端口:容器端口
    ports:
      - "27017:27017"
    # 数据持久化(容器删除数据不丢失)
    volumes:
      - ./data:/data/db
      - ./config:/data/configdb
    # 关键配置:允许所有IP访问
    command: mongod --bind_ip 0.0.0.0

配置说明

  • image: mongo:latest:使用最新版 MongoDB,也可指定版本(如 mongo:6.0mongo:5.0
  • MONGO_INITDB_ROOT_USERNAME:超级管理员账号
  • MONGO_INITDB_ROOT_PASSWORD:超级管理员密码(必须修改
  • volumes:挂载本地目录,保证数据不会随容器删除而丢失
  • ports: 27017:27017:主机 27017 端口映射到容器 MongoDB 端口

三、启动 MongoDB

docker-compose.yml 所在目录执行命令:

bash 复制代码
# 后台启动(-d 表示守护进程)
docker compose up -d

四、常用管理命令

bash 复制代码
# 查看容器运行状态
docker compose ps

# 查看日志
docker compose logs -f

# 停止MongoDB
docker compose stop

# 重启MongoDB
docker compose restart

# 彻底删除容器(数据不会删除,因为挂载到本地了)
docker compose down

五、连接测试

1. 命令行连接(进入容器内部)

bash 复制代码
docker exec -it mongodb mongosh -u admin -p 123456

2. 可视化工具连接(Navicat/MongoDB Compass)

  • 主机:你的服务器IP
  • 端口:27017
  • 用户名:admin
  • 密码:123456
  • 认证数据库:admin

总结

  1. 只需创建一个 docker-compose.yml 配置文件
  2. 执行 docker compose up -d 一键启动
  3. 数据持久化、用户名密码、开机自启全部配置完成
  4. 支持命令行/可视化工具直接连接使用
相关推荐
星辰徐哥3 小时前
本地视频预览别只自己看:把Remotion动效项目发给客户远程验收
docker·ai·node.js·html·音视频·react·remotion
正仪4 小时前
kubernetes中list-watch机制
云原生·容器·kubernetes
cui_hao_nan6 小时前
从零搭建 Kubernetes 集群:Ubuntu + kubeadm 完整实战
ubuntu·容器·kubernetes
fb_123456 小时前
Docker入门-第3章-容器镜像深度解析
运维·docker·容器
IT摆渡者8 小时前
基于 Docker 部署 Nextcloud 私有云盘(外挂 Windows 共享)项目实践
运维·docker·容器
墨香幽梦客9 小时前
Kubernetes+Istio实现CRM系统弹性伸缩:服务网格下的流量治理与熔断策略
容器·kubernetes·istio
新时代牛马9 小时前
单机 docker run 管不住了?从编排需求、期望状态到调度/自愈闭环讲透
运维·docker·容器
binqian10 小时前
Docker Desktop(WSL2 后端)三层网络互通技术文档
网络·docker·容器
LuiChun11 小时前
与精神病患者的日常探讨20260913
docker
闲云野鹤在人间11 小时前
Docker入门|第1章 容器生态系统完整解析
运维·服务器·docker·容器·centos