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

Docker中PostgreSQL可通过pgAdmin连接,但IntelliJ连接失败求助

解决IntelliJ无法连接Docker中PostgreSQL的问题

以下是几种排查和解决方法:

  • 检查网络与端口映射
    pgAdmin如果和PostgreSQL在同一Docker网络内,能直接用postgres作为主机名访问,但IntelliJ运行在宿主机时,无法直接解析Docker内部的主机名。

    • 先尝试用宿主机IP或localhost替换postgres作为连接主机名;
    • 执行docker ps查看PostgreSQL容器的端口映射,确认是否存在0.0.0.0:5432->5432/tcp的映射。如果没有,重新启动容器并添加端口映射参数:docker run -p 5432:5432 <你的PostgreSQL镜像名>。
  • 调整PostgreSQL的监听与权限配置
    容器内的PostgreSQL默认可能只允许本地访问,需要修改配置开放外部访问:

    1. 进入容器:docker exec -it <容器ID或名称> bash
    2. 编辑/var/lib/postgresql/data/postgresql.conf,设置listen_addresses = '*'
    3. 编辑/var/lib/postgresql/data/pg_hba.conf,添加一行:host all all 0.0.0.0/0 md5
    4. 重启容器:docker restart <容器ID或名称>
  • 确认数据库与权限
    通过pgAdmin登录后,检查SpringDevDB数据库是否存在,同时执行SQL语句确保postgres用户有该数据库的访问权限:

    GRANT ALL PRIVILEGES ON DATABASE SpringDevDB TO postgres;
    
  • 检查IntelliJ连接配置细节

    • 确认连接类型选择的是PostgreSQL,端口、用户名、密码输入无误;
    • 点击“Test Connection”前,先点击界面上的“Download”按钮,下载适配的PostgreSQL驱动,确保驱动版本与容器内的PostgreSQL版本兼容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.05 13:55:29