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

Docker部署Aidbox Timescale DB时localhost:5488连接被拒绝求助

解决Docker中Aidbox+TimescaleDB容器连接localhost:5488被拒的问题

核心问题定位

Docker容器有独立的网络栈,容器内的localhost指向容器自身,而非宿主机或其他容器。你遇到的连接被拒,本质是Aidbox容器试图连接自己的5488端口,而非TimescaleDB容器的端口。

具体解决方案

  • 修正数据库连接地址
    如果使用Docker Compose部署:

    1. 确保TimescaleDB容器在compose文件中配置了固定服务名(比如timescaledb)
    2. 将Aidbox容器的数据库连接配置中的DB_HOST改为TimescaleDB的服务名(如timescaledb),而非localhost
    3. 确认端口配置:如果TimescaleDB容器内部端口是5488,DB_PORT设为5488;如果只是宿主机端口映射为5488(容器内部仍用默认5432),则DB_PORT需设为5432
  • 验证TimescaleDB的网络监听配置

    1. 进入TimescaleDB容器,修改postgresql.conf:确保listen_addresses = '*',允许所有IP地址连接
    2. 修改pg_hba.conf,添加允许Aidbox容器所在网络段的连接规则,例如:
      host all all 0.0.0.0/0 md5
      
    3. 重启TimescaleDB容器使配置生效
  • 测试容器间连通性

    1. 启动TimescaleDB容器后,执行命令测试Aidbox容器能否访问其端口:
      docker exec -it <aidbox-container-name> telnet timescaledb 5488
      
    2. 如果连接成功,说明网络没问题;若失败,检查Docker网络是否配置正确(默认bridge网络即可互通,除非自定义了隔离网络)
  • 处理辅助警告

    • SLF4J日志警告:项目依赖中存在多个SLF4J日志实现,需在依赖管理中排除多余的实现(比如排除slf4j-log4j12,保留slf4j-simple或项目所需的日志组件)
    • Clojure命名空间冲突:检查项目代码或依赖库,移除重复的命名空间定义,或调整依赖版本以避免冲突

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.12 04:20:35