ARTICLE · 1085647
Docker 安装 PostgreSQL 新手友好教程
Docker 安装 PostgreSQL 新手友好教程
✅ 亲测可用 | ✅ 官方镜像 | ✅ 安全可靠 | ✅ 一步一步跟着做就行
📖 前言
本教程教你如何用 Docker 快速安装 PostgreSQL 数据库,全程使用官方镜像,安全可靠,新手也能轻松搞定。
什么是 PostgreSQL?
PostgreSQL 是一款功能强大的开源关系型数据库,以其丰富的功能、标准合规性和可扩展性著称,被广泛应用于企业级项目中。
为什么用 Docker 安装?
🚀 快速:几分钟就能装好,不用折腾环境
🧹 干净:不污染本地系统,删了就没了
💾 可移植:换台电脑也能跑一样的环境
🔄 好管理:启动、停止、删除一条命令搞定
📋 前置条件
在开始之前,请确保你已经:
✅ 安装了 Docker Desktop(Windows/Mac)或 Docker(Linux)
✅ Docker 已经启动并正常运行
✅ 能打开终端/命令行
💡 不知道怎么装 Docker? 去 Docker 官网 下载对应系统的版本,一路下一步安装就行。
🚀 安装步骤
第一步:拉取 PostgreSQL 官方镜像
打开终端,执行以下命令:
docker pull postgres:14说明:
postgres:14表示 PostgreSQL 14 版本(稳定可靠,兼容性好)这是从 Docker Hub 官方仓库拉取的,绝对安全
下载需要几分钟,取决于你的网速
下载成功的标志:
看到类似这样的输出就 OK 了:
Status: Downloaded newer image for postgres:14第二步:启动 PostgreSQL 容器
镜像下载完后,执行这条启动命令:
docker run -d \--name postgres \-p5432:5432 \-ePOSTGRES_PASSWORD=123456 \-ePOSTGRES_DB=testdb \-v postgres_data:/var/lib/postgresql/data \--restart=always \ postgres:14
命令参数详解(不用记,了解就行):
| 参数 | 含义 |
|---|---|
-d | 后台运行容器 |
--name postgres | 给容器起个名字叫 postgres |
-p 5432:5432 | 端口映射:本地 5432 → 容器 5432 |
-e POSTGRES_PASSWORD=123456 | 设置数据库密码(建议改成你自己的) |
-e POSTGRES_DB=testdb | 自动创建一个叫 testdb 的数据库 |
-v postgres_data:/var/lib/postgresql/data | 数据持久化,删容器数据不丢 |
--restart=always | Docker 启动时自动启动 PostgreSQL |
postgres:14 | 使用的镜像版本 |
⚠️ 重要:
-v postgres_data:...这个参数一定要加!不然删除容器后数据就没了!
第三步:验证是否启动成功
执行命令查看运行中的容器:
docker ps如果你看到 postgres 容器,状态是 Up,就说明启动成功了!
CONTAINER ID IMAGE STATUS PORTS NAMESxxxxxxxxxxx postgres:14 Up 2 minutes 0.0.0.0:5432->5432/tcp postgres
第四步:连接测试(可选)
想进去玩玩?执行这条命令进入 PostgreSQL 命令行:
docker exec -it postgres psql -U postgres -d testdb进去后你会看到 testdb=# 提示符,试试下面的命令:
-- 查看版本SELECT version();-- 列出所有数据库\l-- 列出所有表\dt-- 退出\q
🔌 用 Navicat/DBeaver 等工具连接
连接信息:
| 项 | 值 |
|---|---|
| 主机 | localhost 或 127.0.0.1 |
| 端口 | 5432 |
| 用户名 | postgres |
| 密码 | 123456(你自己设置的) |
| 默认数据库 | testdb 或 postgres |
💡 提示:如果用 Navicat 连接报错
column "datlastsysoid" does not exist,说明你的 Navicat 版本太老,要么升级 Navicat,要么用 PostgreSQL 14 版本(本教程用的就是 14,不会有这个问题)。
🛠️ 常用命令
容器相关
# 查看运行状态docker ps# 查看日志docker logs postgres# 停止容器docker stop postgres# 启动容器docker start postgres# 重启容器docker restart postgres# 进入容器命令行docker exec -it postgres bash
数据库相关
# 进入 psqldocker exec -it postgres psql -U postgres -d testdb# 备份数据库docker exec postgres pg_dump -U postgres testdb > backup.sql# 恢复数据库docker exec -i postgres psql -U postgres -d testdb < backup.sql
数据卷相关
# 查看所有数据卷docker volume ls# 查看数据卷详情docker volume inspect postgres_data
💾 关于数据持久化
数据存在哪里?
你的数据库数据存在 Docker 的命名卷 postgres_data 里,路径大概是:
Windows:
C:\ProgramData\Docker\volumes\postgres_data\_dataMac/Linux:
/var/lib/docker/volumes/postgres_data/_data
数据安全吗?
✅ 安全!只要你不手动执行 docker volume rm postgres_data,数据就一直在。
哪怕你:
删除容器(
docker rm postgres)→ 数据还在重启 Docker → 数据还在
重启电脑 → 数据还在
⚠️ 注意:删除容器时千万别加
-v参数,不然会把数据卷一起删了!
❌ 卸载方法
如果哪天不想用了,这样卸载:
# 1. 停止容器docker stop postgres# 2. 删除容器(数据还在)docker rm postgres# 3. (可选)删除数据卷(数据就没了,谨慎操作!)docker volume rm postgres_data# 4. (可选)删除镜像docker rmi postgres:14
❓ 常见问题
Q1:拉取镜像很慢怎么办?
A:配置 Docker 镜像加速器,比如 DaoCloud、百度云等镜像源。
Q2:启动后连不上怎么办?
A:
先
docker ps看看容器是不是在运行看看端口是不是 5432
密码是不是对的
看看日志
docker logs postgres有没有报错
Q3:想改密码怎么办?
A:
# 进入 psqldocker exec -it postgres psql -U postgres# 执行改密码 SQLALTER USER postgres WITH PASSWORD '新密码';# 退出\q
Q4:怎么创建新数据库?
A:
# 进入 psqldocker exec -it postgres psql -U postgres# 创建数据库CREATE DATABASE 数据库名;# 退出\q
Q5:PostgreSQL 14 和 16 有什么区别?
A:
16 是最新版,功能更多,性能更好
14 更稳定,兼容性更好(老版本 Navicat 也能用)
新手学习的话,14 完全够用了
📚 学习资源推荐
PostgreSQL 官方文档(最权威)
PostgreSQL 教程 - 菜鸟教程(中文入门)
PostgreSQL 实战(进阶书籍)
🎉 总结
恭喜你!现在你已经成功用 Docker 安装了 PostgreSQL 数据库!
回顾一下我们做了什么:
✅ 拉取了官方 PostgreSQL 14 镜像
✅ 启动了 PostgreSQL 容器
✅ 配置了数据持久化
✅ 验证了安装成功
✅ 知道了常用命令
接下来就可以开始你的 PostgreSQL 学习之旅啦!有问题随时 Google 或者问 AI 哦~
最后更新:2026年8月适用系统:Windows / Mac / Linux测试版本:PostgreSQL 14 + Docker Desktop