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

求助:连接Windows 10上Docker容器内MongoDB服务器遇错误

解决Windows10下Docker容器中MongoDB连接localhost:27017失败的问题
  • 确认容器端口映射配置
    启动MongoDB容器时必须将容器内的27017端口映射到主机的27017端口,否则localhost无法访问。正确的启动命令需包含端口映射参数:

    docker run -d -p 27017:27017 --name mongodb mongo
    

    检查现有容器的端口映射情况,执行命令:

    docker ps
    

    查看输出的PORTS列,应显示0.0.0.0:27017->27017/tcp或:::27017->27017/tcp。若没有该映射,需先停止并删除容器,再重新运行带端口映射的启动命令:

    docker stop mongodb
    docker rm mongodb
    docker run -d -p 27017:27017 --name mongodb mongo
    
  • 检查MongoDB容器运行状态
    执行docker ps查看容器状态是否为Up,若容器未启动,执行:

    docker start mongodb
    

    若容器启动失败,查看日志排查问题:

    docker logs mongodb
    

    日志中若出现权限、配置文件错误等信息,针对性修复即可。

  • 排查主机防火墙/安全软件拦截
    Windows Defender防火墙或第三方安全软件可能拦截27017端口的访问。可临时关闭防火墙测试连接,若能成功连接,需给27017端口添加防火墙允许规则,或允许Docker相关进程通过防火墙。

  • 尝试使用容器IP直接连接
    若端口映射正常但仍无法连接,可尝试直接使用容器IP地址连接:

    1. 获取容器IP:
      docker inspect -f '{{range.NetworkSettings.Networks}}{{.IPAddress}}{{end}}' mongodb
      
    2. 使用该IP替换localhost,例如通过mongodb://<容器IP>:27017测试连接。
  • 检查MongoDB绑定地址配置
    默认MongoDB容器配置绑定0.0.0.0(允许所有IP访问),但如果使用了自定义配置文件,需确保bindIp设置为0.0.0.0而非127.0.0.1,否则容器外部无法访问。若挂载了自定义配置,启动命令示例:

    docker run -d -p 27017:27017 --name mongodb -v C:/path/to/mongod.conf:/etc/mongod.conf mongo --config /etc/mongod.conf
    

    配置文件中net.bindIp需设置为0.0.0.0。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.13 08:16:26