夜雨聆风学习资料网

ARTICLE · 1085647

Docker 安装 PostgreSQL 新手友好教程

Docker 安装 PostgreSQL 新手友好教程

✅ 亲测可用 | ✅ 官方镜像 | ✅ 安全可靠 | ✅ 一步一步跟着做就行


📖 前言

本教程教你如何用 Docker 快速安装 PostgreSQL 数据库,全程使用官方镜像,安全可靠,新手也能轻松搞定。

什么是 PostgreSQL?

PostgreSQL 是一款功能强大的开源关系型数据库,以其丰富的功能、标准合规性和可扩展性著称,被广泛应用于企业级项目中。

为什么用 Docker 安装?

  • 🚀 快速:几分钟就能装好,不用折腾环境

  • 🧹 干净:不污染本地系统,删了就没了

  • 💾 可移植:换台电脑也能跑一样的环境

  • 🔄 好管理:启动、停止、删除一条命令搞定


📋 前置条件

在开始之前,请确保你已经:

  1. ✅ 安装了 Docker Desktop(Windows/Mac)或 Docker(Linux)

  2. ✅ Docker 已经启动并正常运行

  3. ✅ 能打开终端/命令行

💡 不知道怎么装 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=alwaysDocker 启动时自动启动 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\_data

  • Mac/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:

  1. 先 docker ps 看看容器是不是在运行

  2. 看看端口是不是 5432

  3. 密码是不是对的

  4. 看看日志 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 数据库!

回顾一下我们做了什么:

  1. ✅ 拉取了官方 PostgreSQL 14 镜像

  2. ✅ 启动了 PostgreSQL 容器

  3. ✅ 配置了数据持久化

  4. ✅ 验证了安装成功

  5. ✅ 知道了常用命令

接下来就可以开始你的 PostgreSQL 学习之旅啦!有问题随时 Google 或者问 AI 哦~


最后更新:2026年8月适用系统:Windows / Mac / Linux测试版本:PostgreSQL 14 + Docker Desktop

#docker #postgerSQL #linux #人工智能

相关学习资料