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

运行FIWARE教程docker-compose报地址池重叠错误如何解决?

问题原因
  • 核心错误ERROR: Pool overlaps with other one on this address space和网络名称无关,是你docker-compose配置中硬编码指定的172.18.1.0/24子网网段,已经被宿主机上的其他网络占用,可能是你现有Docker网络列表中的hadig_default,也可能是宿主机的物理网卡、其他虚拟网卡使用了该网段。
  • 附带的WARNING: The host variable is not set属于次要警告,是因为MongoDB健康检查脚本中的$host被docker-compose误识别为需要替换的环境变量,不会阻塞服务启动。
解决方案
  • 方案1:修改固定子网配置
    将docker-compose中网络部分的子网替换为其他未被占用的私有网段,示例修改如下:
networks:
  default:
    ipam:
      config:
        - subnet: 172.19.1.0/24

修改完成后重新执行docker-compose up -d即可。

  • 方案2:删除占用网段的闲置网络
    先执行docker network inspect hadig_default | grep Subnet确认该网络占用的网段,如果确实是172.18.1.0/24且该网络无正在运行的容器使用,执行docker network rm hadig_default删除该网络后,再重新启动服务。

  • 方案3:删除固定子网配置
    如果没有强制要求使用固定网段,可以直接删除networks下的IPAM配置,让Docker自动分配可用网段,修改后配置如下:

networks:
  default: ~

修改后重新启动服务即可。

  • 可选:消除host变量警告
    如果要去掉附带的警告,只需要将MongoDB健康检查脚本中的$host修改为$$host,告知docker-compose该符号是脚本内部变量,不需要提前解析。

内容的提问来源于stack exchange,提问作者hadi nik

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.24 23:45:04