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

微服务无法连接以Docker镜像运行的Axon Server问题求助

问题原因

报错日志显示product-service尝试连接localhost:8124上的Axon Server,当服务在容器中运行时,容器内的localhost指向当前容器自身,而非宿主机或同Docker网络下的其他服务,因此无法找到运行在axon-server容器中的服务。


解决方案

两种方案任选其一即可:

  • 方案1:修改产品服务配置文件
    打开ProductsService项目下的application.properties或application.yml配置文件,将Axon Server地址配置修改为对应容器服务名:
    properties格式示例:

    axon.axonserver.servers=axon-server:8124
    

    yaml格式示例:

    axon:
      axonserver:
        servers: axon-server:8124
    

    同一Docker网络下的服务可直接通过服务名作为域名互相访问,此处的axon-server对应docker-compose中定义的Axon服务名称。

  • 方案2:通过docker-compose环境变量覆盖配置(无需修改代码)
    直接修改docker-compose.yml中product-service的配置,新增环境变量即可覆盖项目中的默认配置:

    product-service:
      build:
        context: ./ProductsService
      ports:
        - 8090:8090
      depends_on:
        - axon-server
        - discovery-service
      networks:
        - axon-demo
      # 新增以下配置
      environment:
        - AXON_AXONSERVER_SERVERS=axon-server:8124
      # 可选配置:启动失败自动重启,避免axon-server未完全初始化导致的连接失败
      restart: on-failure
    

配置修改完成后,执行以下命令重新构建镜像并启动服务,确保修改的配置生效:

docker-compose up --build

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.07 14:18:03