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

如何将CVAT的Postgres数据库连接到DBeaver并解决连接超时问题

CVAT Postgres数据库连接DBeaver超时解决方法

问题根因

你当前的cvat_db容器配置没有将PostgreSQL默认的5432端口暴露到宿主机,外部的DBeaver工具无法直接访问容器内的数据库服务,因此触发连接超时。

解决方案1:端口映射(推荐)

第一步:修改Docker Compose配置

在你的docker-compose.yml的cvat_db配置段新增端口映射规则,修改后的完整配置如下:

services: 
  cvat_db:
    container_name: cvat_db
    image: postgres:10-alpine
    restart: always
    # 新增端口映射,将容器5432端口映射到宿主机5432端口
    ports:
      - "5432:5432"
    environment:
      POSTGRES_USER: root
      POSTGRES_DB: cvat
      POSTGRES_HOST_AUTH_METHOD: trust
    volumes:
      cvat_db:/var/lib/postgresql/data
    networks:
      - cvat

volumes:
  cvat_db:

networks:
  cvat:

如果宿主机的5432端口已经被其他服务占用,可以改为其他未占用端口,例如"5433:5432",后续DBeaver配置对应修改端口即可。

第二步:重启容器生效配置

在docker-compose.yml所在目录执行以下命令重启服务:

docker-compose up -d

第三步:配置DBeaver连接参数

  • 主机地址:填写CVAT部署服务器的IP地址
  • 端口:填写你映射的宿主机端口,默认映射为5432
  • 数据库:cvat
  • 用户名:root
  • 密码:留空即可,你配置了POSTGRES_HOST_AUTH_METHOD: trust无需密码验证

解决方案2:SSH隧道(无需修改Docker配置,更安全)

如果不想暴露数据库端口到公网,可以通过SSH隧道访问,无需修改原有Docker配置:

  1. 打开DBeaver的连接配置,切换到「SSH」标签页,勾选「使用SSH隧道」
  2. 填写CVAT服务器的SSH连接地址、端口、登录账号、密码/密钥
  3. 切回「主」标签页,主机地址填127.0.0.1,端口填5432,其余数据库、用户名配置和上文一致即可

连接失败排查

如果修改配置后仍然连接失败,检查以下项:

  • CVAT服务器的防火墙/安全组是否开放了你映射的数据库端口的入站规则
  • 执行docker ps确认cvat_db容器正常运行,端口映射状态正常
  • 跨公网访问的场景下,确认服务器有公网IP,端口没有被运营商封禁

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 15:27:02