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

同一网桥网络下Docker容器内axios无法向另一容器发送请求如何解决?

问题根因与解决方案

你代码中填写的请求地址错误:172.20.0.1是你自定义网桥csp_net的网关地址,并非你要访问的authentication服务的容器IP。

两种解决方式

  • 方式一:使用固定IP访问
    你的authentication容器在csp_net网络下分配的固定IP是172.20.0.6,直接修改test服务的axios配置即可:
    const options = {
        method: 'GET',
        url: 'http://172.20.0.6:80/user',
      };
    
  • 方式二(更推荐):使用容器名DNS解析
    Docker自定义网桥默认内置DNS服务,同网络下的容器可以直接使用对方的container_name作为域名访问,无需绑定固定IP,后续调整IP也不需要修改业务代码,修改配置如下:
    const options = {
        method: 'GET',
        url: 'http://authentication:80/user',
      };
    

可选排查步骤

如果修改后仍然无法访问,可按以下顺序排查:

  1. 进入test容器内部,执行ping authentication或ping 172.20.0.6,确认网络层连通性
  2. 在test容器内执行curl http://authentication:80/user,确认接口本身可以正常返回,排除服务启动异常、路径错误等业务层面问题
  3. 确认authentication服务的Node.js进程监听地址是0.0.0.0:80,而非127.0.0.1:80,后者只能在容器内部访问,无法被同网络其他容器调用

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:57:02