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

Docker环境下MongoDB 3.4升级/恢复至3.6后连接失败问题

MongoDB 3.6容器仅绑定127.0.0.1导致外部连接失败的解决办法

问题核心是MongoDB 3.6默认仅监听127.0.0.1,而3.4版本默认监听所有IP(0.0.0.0),这就导致容器内的MongoDB只接受本地请求,外部客户端(比如Studio3T、你的应用)无法连接。

解决步骤:

  1. 修改docker-compose.yml配置
    在mongo-new服务中添加command参数,强制MongoDB绑定所有IP:

    version: '3.9'
    services:
      mongo:
        image: mongo:3.4
        ports:
          - 27020:27017
        volumes:
          - mongo-test:/data/db
      mongo-new:
        image: mongo:3.6
        ports:
          - 27021:27017
        volumes:
          - mongo-test-new:/data/db
        command: mongod --bind_ip_all  # 添加这一行
    volumes:
      mongo-test:
      mongo-test-new:
    
  2. 重启容器
    执行以下命令重新启动服务:

    docker-compose down && docker-compose up -d
    
  3. 验证绑定状态
    查看MongoDB 3.6容器的日志,确认输出中包含类似以下内容,说明已绑定所有IP:

    [initandlisten] waiting for connections on port 27017
    [initandlisten] listening on all IPv4 addresses; port 27017
    

完成以上操作后,再用Studio3T或应用连接localhost:27021,应该就能正常建立连接了。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.24 23:15:11