使用 Docker 部署 PostgreSQL

通过 Docker 部署 PostgreSQL 是一种快速、高效的方式,适用于开发和测试环境。

步骤 1:拉取 PostgreSQL 镜像

运行以下命令从 Docker Hub 拉取最新的 PostgreSQL 镜像:

bash 复制代码
docker pull postgres

如果需要其他的镜像,可以指定版本:

bash 复制代码
docker pull postgres:17.5

步骤 2:创建数据卷

为了持久化存储数据库数据,建议创建一个数据卷:

bash 复制代码
docker volume create postgres-data

数据卷有单独的生命周期,停止容器时数据卷不会删除

步骤 3:运行 PostgreSQL 容器

使用以下命令启动 PostgreSQL 容器:

bash 复制代码
docker run --name postgresql \
-p 5432:5432 \
-v postgres-data:/var/lib/postgresql/data \
-e POSTGRES_PASSWORD=your_password \
-d postgres
  • -v 挂载数据卷以确保数据持久化。

  • -p 将容器的默认端口 5432 映射到主机。

  • -e POSTGRES_PASSWORD 设置超级用户密码。

步骤 4:验证容器运行状态

检查容器是否正常运行:

bash 复制代码
docker ps

如果容器未正常启动,可通过以下命令查看日志:

bash 复制代码
docker logs postgresql

步骤 5:运行 pgAdmin(可选)

如果需要图形化管理工具,可以运行 pgAdmin 容器:

bash 复制代码
docker run \
--name pgadmin4 \
-p 5433:80 \
-e PGADMIN_DEFAULT_EMAIL=admin@example.com \
-e PGADMIN_DEFAULT_PASSWORD=admin123 \
-d dpage/pgadmin4

然后在浏览器中访问 http://localhost:5433,使用设置的邮箱和密码登录。

最佳实践

  1. 持久化数据:始终使用数据卷以防止数据丢失。

  2. 安全性:避免在生产环境中使用默认密码,确保网络配置安全。

  3. 资源优化:根据需求选择合适的镜像版本(如 Alpine)。

通过以上步骤,您可以快速部署并运行 PostgreSQL 数据库!

相关推荐
龙腾-虎跃25 分钟前
Docker 一键启动服务合集:Redis、MySQL、Kafka、MinIO、Prometheus 等(网盘转存防失效)
redis·mysql·docker·kafka·prometheus·小龙虾·miniio
芷栀夏37 分钟前
极空间部署Photopea:Docker运行、网页修图与多设备使用
运维·docker·容器
JeJe同学11 小时前
Docker镜像导入、容器启动
linux·运维·docker
胖头鱼的鱼缸(尹海文)12 小时前
胖头鱼的技术专栏-474 从能跑到能上线:PG SplitJSON 0.2.0 和 0.1.0 差在哪(20261008)
postgresql·json
元Y亨H15 小时前
基于 Jenkins + Docker 的前端(Vben Admin)CI/CD 踩坑
docker·jenkins
云贝贝贝16 小时前
PostgreSQL 分区表:从设计到运维,大表不再卡
运维·数据库·postgresql
wzq11_66616 小时前
kubernetes集群——灰度发布
云原生·容器·kubernetes
白兰地空瓶16 小时前
项目要上线了,我连夜学完 Docker:从底层原理到容器化部署全记录
docker·全栈
Knight_AL18 小时前
PostgreSQL Docker 数据库备份:pg_dump 与 SQL 格式备份的区别
数据库·docker·postgresql
灯澜忆梦19 小时前
【docker】#1 | Docker 初识
运维·docker·容器