You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Docker Compose中MongoDB与Mongo Express连接失败问题求助

问题分析

从错误日志能看到核心问题:UserNotFound: Could not find user "root" for db "storage",原因是MongoDB的root超级用户默认创建在admin数据库,而你的Mongo Express配置里指定了ME_CONFIG_MONGODB_AUTH_DATABASE=storage,导致它错误地去storage库验证root用户,自然找不到。

另外还有两个次要问题:

  • depends_on只保证MongoDB先启动,但不等待它完成初始化,可能出现Mongo Express连接时MongoDB还没准备好的情况
  • 密码里的#字符在URL中是特殊字符(锚点标记),可能导致连接字符串解析错误
修复后的Docker Compose配置
services:
  mongodb:
    container_name: mongodb
    image: mongo:6.0.5-jammy
    volumes:
     - ./data:/data/db
    ports: 
     - "27017:27017"
    networks:
      mongonet:
       ipv4_address: 172.20.0.10
    environment:
     MONGODB_INITDB_ROOT_USERNAME: root 
     MONGODB_INITDB_ROOT_PASSWORD: password#123
     MONGO_INITDB_DATABASE: storage
    healthcheck:
      test: ["CMD", "mongosh", "--eval", "db.adminCommand('ping')"]
      interval: 5s
      timeout: 5s
      retries: 5

  mongoexpress:
    depends_on: 
      mongodb:
        condition: service_healthy
    image: mongo-express:1.0.0-alpha.4
    ports:
      - "8080:8081"
    networks:
      mongonet:
        ipv4_address: 172.20.0.11   
    environment:
      # 移除错误的认证数据库配置,默认使用admin
      - ME_CONFIG_BASICAUTH_USERNAME=admin
      - ME_CONFIG_BASICAUTH_PASSWORD=password#123
      - ME_CONFIG_MONGODB_SERVER=172.20.0.10
      - ME_CONFIG_MONGODB_ADMINUSERNAME=root
      # 对密码中的#进行URL编码为%23
      - ME_CONFIG_MONGODB_ADMINPASSWORD=password%23123
  
networks:
  mongonet:
    driver: bridge
    ipam:
      config:
        - subnet: 172.20.0.0/24
          gateway: 172.20.0.1
关键修复点
  • 修正认证数据库:移除ME_CONFIG_MONGODB_AUTH_DATABASE=storage,让Mongo Express默认去admin库验证root用户(也可以显式设置为ME_CONFIG_MONGODB_AUTH_DATABASE=admin)
  • URL编码密码特殊字符:将密码中的#替换为%23,避免连接字符串解析错误
  • 添加健康检查依赖:给MongoDB加healthcheck,让Mongo Express等待MongoDB完全初始化后再启动,避免连接时机过早
注意事项

如果之前已经启动过容器,./data目录里已经有旧的数据库数据,需要先清理:

rm -rf ./data
docker-compose down -v

然后重新启动:

docker-compose up -d

内容的提问来源于stack exchange,提问作者Simple Fellow

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.22 11:20:04