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

Docker安装的pgAdmin4无服务器显示,如何连接本地PostgreSQL 13.5?

本地PostgreSQL与Docker版pgAdmin4连接操作步骤

方案1:保留现有pgAdmin容器(无需重建)

步骤1:修改PostgreSQL访问配置

  • 编辑PostgreSQL主配置文件,Ubuntu18.04+PG13.5默认路径为 /etc/postgresql/13/main/postgresql.conf
  • 找到listen_addresses配置项,修改为允许所有地址监听:
    listen_addresses = '*'
    
  • 保存后编辑同目录下的pg_hba.conf,末尾新增一行放行Docker网段的访问请求:
    host    all             all             172.17.0.0/16           scram-sha-256
    
  • 执行命令重启PostgreSQL服务使配置生效:
    sudo systemctl restart postgresql

步骤2:获取宿主机Docker网关地址

Docker容器访问宿主机需要通过网关IP,执行以下命令获取地址:
docker network inspect bridge | grep Gateway
输出返回的IP(默认是172.17.0.1)即为宿主机网关地址。

步骤3:在pgAdmin中添加服务器

  1. 登录pgAdmin4后台,右键左侧边栏的Servers,选择Register > Server
  2. General标签页:Name字段自定义填写即可,例如本地PG13.5
  3. Connection标签页按以下参数填写:
    • Host name/address:填写步骤2拿到的网关IP,例如172.17.0.1
    • Port:5432
    • Maintenance database:postgres
    • Username:postgres
    • Password:本地postgres用户的登录密码,如未设置可先在本地psql执行ALTER USER postgres PASSWORD '自定义密码';设置
  4. 点击保存即可看到服务器出现在侧边栏。

方案2:主机网络模式(更简单,需重建pgAdmin容器)

如果不想修改PostgreSQL配置,可以直接让pgAdmin容器共享宿主机网络栈:

  1. 停止并删除现有pgAdmin容器:
    docker stop <你的pgAdmin容器ID>
    docker rm <你的pgAdmin容器ID>
    
  2. 用主机网络模式重新启动容器:
    docker run --network host -e "PGADMIN_DEFAULT_EMAIL=testemail@gmail.com" -e "PGADMIN_DEFAULT_PASSWORD=testpassword" -d dpage/pgadmin4
    
  3. 此时pgAdmin访问地址为http://127.0.0.1/browser,添加服务器时Host直接填localhost,其余配置和方案1步骤3一致即可。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 23:36:01