欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 新车 > docker部署postgresSQL 并做持久化

docker部署postgresSQL 并做持久化

2025/6/18 17:38:57 来源:https://blog.csdn.net/weimeilayer/article/details/141405281  浏览:    关键词:docker部署postgresSQL 并做持久化

先安装docker,安装docker 方法自行寻找方法
在这里插入图片描述
然后安装pgsql
在这里插入图片描述
拉取镜像

docker pull registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latest

运行容器

docker run -it --name postgres --privileged --restart always -e POSTGRES_PASSWORD='Yo5WYypu0mCCheOU' -e ALLOW_IP_RANGE=0.0.0.0/0 -e TZ=Asia/Shanghai -p 5432:5432 -v /data/postgres/data:/var/lib/postgresql/data -d registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latest

带连接数

docker run -it --name postgres --privileged --restart always -e POSTGRES_PASSWORD='Yo5WYypu0mCCheOU' -e ALLOW_IP_RANGE=0.0.0.0/0 -e TZ=Asia/Shanghai -p 5432:5432 -v /data/postgres/data:/var/lib/postgresql/data -d registry.cn-hangzhou.aliyuncs.com/qiluo-images/postgres:latest -c 'max_connections=20000'

修改外部可以连接,复制配置到外部

docker cp postgres:/var/lib/postgresql/data/pg_hba.conf /data/postgres/pg_hba.conf

把 第一行的改成第二行
在这里插入图片描述
把修改的配置复制到容器

docker cp /data/postgres/pg_hba.conf postgres:/var/lib/postgresql/data/pg_hba.conf

然后重启容器

docker restart postgres

开启5432端口

firewall-cmd --permanent --add-port=5432/tcp
firewall-cmd --reload

查看安装的服务版本

docker exec -it postgres psql -U postgres -c "SELECT version();"
docker exec -it postgres psql -U postgres -c "SHOW server_version;"

本文镜像版本是16.4
在这里插入图片描述

默认是设置了时区,如果没有设置的,在容器内手动设置,你也可以在运行的 PostgreSQL 容器内手动更改时区设置。
进入容器:

docker exec -it postgres bash

编辑 postgresql.conf 文件,将 timezone 设置为你需要的时区:

echo "timezone = 'Asia/Shanghai'" >> /var/lib/postgresql/data/postgresql.conf

退出,重启容器

docker restart postgres

如果是单独修改,复制出来

docker cp postgres:/var/lib/postgresql/data/postgresql.conf /data/postgres/

然后再宿主机编辑,修改连接数

max_connections=100 改成max_connections=20000

然后把配置文件复制回去

docker cp /data/postgres/postgresql.conf postgres:/var/lib/postgresql/data/postgresql.conf

重启容器

docker restart postgres

执行如下SQL进行验证,查看max_connections:

show max_connections;

查看当前连接数:

select count(*) from pg_stat_activity;

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词