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

Ubuntu18.04下从PGAdmin容器连接本地PostgreSQL报连接拒绝错误

解决步骤
  • 修正PGAdmin连接地址
    容器内的localhost指向容器自身网络,并非Ubuntu宿主机。先执行命令ip addr show docker0,取输出中inet字段后的IP(默认值通常为172.17.0.1),把PGAdmin服务器配置的hostname/address替换为该IP。
    若PGAdmin容器是通过--net=host参数启动的,可保留localhost配置,跳过本步骤。
  • 调整PostgreSQL监听规则
    打开PostgreSQL配置文件(路径一般为/etc/postgresql/<你的PG版本号>/main/postgresql.conf),找到listen_addresses项,修改为:
    listen_addresses = '*'
    
    也可仅指定监听docker0网卡的IP,安全性更高。
  • 配置数据库访问白名单
    打开同目录下的pg_hba.conf文件,在末尾添加规则允许docker网段访问:
    host    all             all             172.17.0.0/16            scram-sha-256
    
    PostgreSQL版本低于10的话,将最后一项验证方式改为md5。如果你的docker自定义了网段,替换172.17.0.0/16为实际使用的网段即可。
  • 重启服务生效配置
    执行命令重启PostgreSQL:
    sudo systemctl restart postgresql
    
  • 放行防火墙端口
    执行命令允许docker网段访问5432端口:
    sudo ufw allow in from 172.17.0.0/16 to any port 5432
    
    操作完成后回到PGAdmin重新连接即可。

内容的提问来源于stack exchange,提问作者Mr. Annonymous

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.27 01:06:01