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

docker-compose部署React无法访问Spring Boot API报ECONNREFUSED问题求助

问题根源

你碰到的报错本质是容器网络寻址错误:
127.0.0.1/localhost在容器内部指向的是容器自身的环回地址,而非宿主机或同一Docker网络下的其他服务。你在Postman能调用成功是因为请求是从宿主机发起的,宿主机上8080端口已经被后端容器映射出来了,但React容器内部没有跑8080端口的服务,自然会报ECONNREFUSED。

解决方案

1. 开发环境(npm start模式)修改

  • 把package.json里的proxy配置改成后端服务的Docker服务名:
"proxy": "http://app-server:8080"

同一个Docker网络下的服务可以直接用服务名互相访问,你这里前端app-client和后端app-server都加入了frontend网络,直接用app-server作为域名就能寻址到后端容器。

  • 如果你用开发模式的docker-compose配置,给前端服务传的API基础地址也要同步改成http://app-server:8080。

2. 现有配置的冗余问题修复

你当前生产环境用的前端Dockerfile里EXPOSE 8是笔误,改成EXPOSE 80即可,不影响实际运行但规范上需要修正。

验证方法

修改完成后执行以下命令重启服务,清除旧的构建缓存:

docker-compose down -v
docker-compose up --build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.01 13:36:02