基于pgAdmin4 Web UI界面实现连接docker 版PostgreSQL实现增删改查操作

Docker-Compose.yaml

bash 复制代码
services:
  postgres:
    image: postgres:16
    container_name: my_postgres
    restart: unless-stopped
    env_file:
      - ./.env
    ports:
      - "5432:5432"
    volumes:
      - pgdata:/var/lib/postgresql/data
      - ./initdb:/docker-entrypoint-initdb.d:ro

  pgadmin:
    image: dpage/pgadmin4
    container_name: my_pgadmin
    restart: unless-stopped
    environment:
      PGADMIN_DEFAULT_EMAIL: lzdssd@qq.com
      PGADMIN_DEFAULT_PASSWORD: admin123
    ports:
      - "5050:80"

volumes:
  pgdata:

第一步:确认你的 postgres 容器信息

运行:

bash 复制代码
docker ps

找到你的 PostgreSQL 容器,类似:

复制代码
CONTAINER ID   NAME          IMAGE           PORTS
xxxxx          my_postgres   postgres:16     5432/tcp

你需要确认三个关键信息:

信息 说明 示例值
Host pgAdmin 与 postgres 在同一个 docker compose 网络中 my_postgres
Port postgres 容器内部端口 5432
Username POSTGRES_USER postgres
Password POSTGRES_PASSWORD 123456
DB Name POSTGRES_DB mydb

如果你用 docker-compose,通常连接方式如下:

Host:postgres 容器名,例如 my_postgres
Port:5432


第二步:在 pgAdmin4 中添加 PostgreSQL Server

  1. 登录 pgAdmin4
  2. 左侧 "Servers" → 右键 → Create → Server...

🟦 General 选项

  • Name: 随便填,例如:Local Postgres

🟩 Connection 选项

按你 docker-compose 的名字填写。例如:

选项 填什么
Host name/address my_postgres(容器名)
Port 5432
Maintenance database postgres
Username postgres
Password 你设置的密码,如 postgres123

不要填 localhost!pgAdmin 在容器里,localhost 是 pgAdmin 容器本身,不是你的数据库。


🟩 如你的 docker-compose 是下面这样的:

yaml 复制代码
services:
  my_postgres:
    image: postgres:16
    environment:
      POSTGRES_USER: postgres
      POSTGRES_PASSWORD: 123456
      POSTGRES_DB: testdb

那你在 pgAdmin 填:

复制代码
Host: my_postgres
Port: 5432
User: postgres
Password: 123456
Database: testdb

🎉 第三步:创建数据库

连接成功后:

Servers → Local Postgres → Databases → 右键 → Create → Database

输入:

  • Database: demo
  • Owner: postgres

保存即可。


🎉 第四步:创建数据表

选择你刚建的数据库 demo:

复制代码
demo → Schemas → public → Tables → 右键 Create → Table

示例表结构(用户表 user):

Column Type Constraints
id serial Primary key
name varchar(50) not null
age int

填完后保存。


🎉 第五步:增删改查(SQL)

右键你的 demo 数据库 → Query Tool

输入 SQL:

▶ 插入数据

sql 复制代码
INSERT INTO public.user (name, age) VALUES ('Tom', 25);

▶ 查询数据

sql 复制代码
SELECT * FROM public.user;

▶ 更新数据

sql 复制代码
UPDATE public.user SET age = 30 WHERE name = 'Tom';

▶ 删除数据

sql 复制代码
DELETE FROM public.user WHERE name = 'Tom';

相关推荐
梦梦代码精3 小时前
开源AI应用平台BuildingAI解析:插件化架构、应用市场与热门案例
人工智能·机器学习·docker·开源
IT瑞先生5 小时前
Docker快速部署Mysql的三种方法——实操篇
mysql·adb·docker
梦远青城6 小时前
Docker 部署python的paddle进行OCR文字识别身份证
python·docker·ocr·paddle·身份证识别
jnrjian7 小时前
\dx Postgres 查看EXTENSION
postgresql
java_logo7 小时前
ELK Docker Compose 部署指南:轻松搭建日志检索平台
elk·elasticsearch·docker·容器·kibana·logstash·轩辕镜像
Lihua奏7 小时前
高可用与扩展:一台 PostgreSQL 不够用之后怎么办?
postgresql
ShallWeL7 小时前
Orin 上用 Docker 跑通目标检测功能
人工智能·目标检测·docker·容器
辰同学ovo8 小时前
用“舞台换景”讲清 Docker 的 Restart 与 Recreate
运维·docker·容器
看-是灰机9 小时前
使用go语言实现对接
linux·开发语言·后端·docker·语言模型·golang·飞书