当前位置: 首页 > article >正文

BC-Linux8.6上面手动安装Postgresql17(Docker版)

目标

在BC-Linux的Docker上面手动运行postgresql17容器。

步骤

pg离线镜像文件

# 拉取得pg17 x86_64离线镜像
docker pull --platform linux/amd64 postgres:17-alpine3.20
# 保存pg17离线镜像文件
docker save -o postgres17.tar postgres

pg自定义配置文件

# 获取默认配置
docker run -i --rm postgres:17-alpine3.20 cat /usr/local/share/postgresql/postgresql.conf.sample > default-postgres.conf

运行pg17容器

docker run -d \
	--name postgres17 \
	-e POSTGRES_PASSWORD=<密码> \
	-e PGDATA=/var/lib/postgresql/data/pgdata \
	-v "$PWD/data":/var/lib/postgresql/data \
    -v "$PWD/postgres.conf":/etc/postgresql/postgresql.conf \
    -p 5432:5432 \
	postgres:17-alpine3.20 -c 'config_file=/etc/postgresql/postgresql.conf'

检查

然后通过如下命令检查:

[docker@localhost pg17]$ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS         PORTS                                       NAMES
627b51a36594   postgres:17-alpine3.20   "docker-entrypoint.s…"   5 seconds ago   Up 5 seconds   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp   postgres17

测试

成功创建pg容器之后,使用如下命令进行检查:

[docker@localhost pg17]$ docker ps
CONTAINER ID   IMAGE                    COMMAND                  CREATED         STATUS         PORTS                                       NAMES
627b51a36594   postgres:17-alpine3.20   "docker-entrypoint.s…"   5 seconds ago   Up 5 seconds   0.0.0.0:5432->5432/tcp, :::5432->5432/tcp   postgres17

检查之前再配置文件中添加的一行变动配置:

max_connections = 700

登录到pg容器里面,检查上述配置:

[docker@localhost pg17]$ docker exec -it postgres17 sh
/ # psql -U postgres postgres
psql (17.2)
Type "help" for help.

postgres=# show max_connections;
 max_connections
-----------------
 700
(1 row)

postgres=#

从上面结果,可知,我们的配置生效了。

总结

到这里我们pg17在docker上面部署就完成了。接下来,只要导入数据就行了。这里就不再进一步介绍了。

参考

  • postgresql清理空闲连接
  • PostgreSQL初始化数据库和用户
  • postgres
  • How to persist and backup data of a PostgreSQL Docker container
  • max_connections
  • docker container exec

http://www.kler.cn/a/414535.html

相关文章:

  • 【漏洞复现】|百易云资产管理运营系统/mobilefront/c/2.php前台文件上传
  • 深入浅出UART驱动开发与调试:从基础调试到虚拟驱动实现
  • 【AI绘画】Midjourney进阶:色调详解(下)
  • 单片机学习笔记 11. 外部中断
  • 面试手撕题积累
  • Qt中QGraphics绘图类相关解释
  • 永久免费的PDF万能水印删除工具
  • AD软件如何快速切换三维视图,由2D切换至3D,以及如何恢复
  • Lumoz TGE在即,NFT助力提前解锁esMOZ
  • TDengine(涛数)据库安装保姆级教程
  • Linux Deploy安装Debian桌面
  • 深入讲解Spring Boot和Spring Cloud,外加图书管理系统实战!
  • 毕昇入门学习
  • 霍夫变换:原理剖析与 OpenCV 应用实例
  • Leetcode:349. 两个数组的交集
  • 大数据挖掘实战-PyODPS基础操作
  • 相机学习笔记——工业相机的基本参数
  • 详解 PyTorch 图像预处理:使用 torchvision.transforms 实现有效的数据处理
  • 如何利用Java爬虫获取店铺详情:一篇详尽指南
  • C++算法练习-day47——450.删除二叉搜索树中的节点
  • 我们项目要升级到flutter架构的几点原因
  • elasticsearch集群部署及加密通讯
  • 架构-微服务-环境搭建
  • ubuntu连接副屏显示器不量的一系列踩坑记录
  • 【PGCCC】Postgresql BRIN 索引原理
  • Jenkins Nginx Vue项目自动化部署