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

Windows版Docker运行Linux容器访问localhost报ERR_EMPTY_RESPONSE问题

排查及解决步骤

  • 首先确认容器端口映射配置是否正确
    执行docker ps查看运行中容器的PORTS列,确认格式为0.0.0.0:5104->[容器内服务端口]/tcp,若你容器内服务实际监听的不是5104端口,需要修改启动命令的端口映射参数,比如容器内服务跑在80端口,启动时要加参数-p 5104:80。
  • 验证容器内服务是否正常运行
    执行docker exec -it [容器ID/容器名] curl http://localhost:[容器内服务端口],如果执行后无正常响应,说明容器内服务本身启动失败,执行docker logs [容器ID/容器名]查看应用日志排查启动报错。
  • 确认Windows本地端口是否被Docker正常监听
    打开CMD执行netstat -ano | findstr :5104,如果没有返回监听记录,说明Docker端口转发失败,可尝试重启Docker Desktop后重新启动容器。
    如果你使用WSL2作为Docker后端,也可以尝试获取WSL实例的IP直接访问,替换localhost为WSL IP测试连通性
  • 检查Windows防火墙拦截规则
    临时关闭Windows Defender防火墙后再次访问,如果可以正常打开,需要手动添加入站规则放行5104端口的TCP流量。
  • 特殊场景适配(.NET/ASP.NET Core应用)
    这类应用默认仅绑定容器内的localhost地址,外部无法访问,启动时需要添加参数指定绑定0.0.0.0,示例:dotnet run --urls http://0.0.0.0:5104,或在Dockerfile的ENTRYPOINT中添加对应配置。

错误截图:
错误截图

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.29 05:39:04