docker搭建postgresql 13版本

该文指导如何使用Docker拉取Postgres镜像并运行容器,设置环境变量,挂载数据卷,确保服务重启。接着通过容器执行bash命令,创建超级用户和普通用户,并对用户赋予数据库和公共模式表的全部权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、docker pull postgres:13

2、docker run -d --name postgres13 -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=postgres -v /home/sunyuhua/docker/postgresql/data:/var/lib/postgresql/data -v /etc/localtime:/etc/localtime --restart=always -p 15432:5432 postgres:13

3、 docker exec -it postgres13 /bin/bash

4、创建查询用户,并赋值权限

psql -U postgres

CREATE ROLE sa WITH SUPERUSER LOGIN PASSWORD ‘xxxxx’;

create user sa with password ‘xxxxxxx’;

grant all PRIVILEGES on database postgres to sa;

grant all PRIVILEGES on all tables in schema public TO sa;

### 使用 Docker 部署 PostgreSQL 16.3 并配置远程访问 为了使用 Docker 成功部署 PostgreSQL 16.3 数据库并允许其接受来自外部网络的连接,需遵循一系列特定的操作指南。 #### 准备工作环境 确保主机已安装 Docker 环境,并具备足够的权限来运行容器化应用。对于某些情况下的服务部署,可能还需要挂载宿主机上的 `/var/run/docker.sock` 到容器内相应路径以便于管理和监控[^1];不过针对 PostgreSQL 的部署而言,这一步并非必需。 #### 下载官方镜像 通过执行命令 `docker pull postgres:16.3` 来获取最新的 PostgreSQL 版本 16.3 官方镜像文件。 #### 创建持久卷存储数据 为了避免因容器重启而导致的数据丢失问题,在启动之前应该先创建用于长期保存数据库文件的位置。可以利用如下指令建立名为 pgdata 的 Docker 卷: ```bash docker volume create pgdata ``` #### 启动 PostgreSQL 容器实例 接下来将以交互模式启动一个新的 PostgreSQL 实例,同时指定端口映射关系以及必要的环境变量: ```bash docker run \ --name some-postgres \ -e POSTGRES_PASSWORD=mysecretpassword \ -d postgres:16.3 ``` 上述命令中的 `-p 5432:5432` 参数表示将宿主机的 5432 TCP 端口转发到容器内部对应的默认监听地址上,从而实现对外部请求的支持。而设置密码则是出于安全性考虑所采取的重要措施之一。 #### 修改配置支持远程接入 为了让 PostgreSQL 能够响应远端客户端发起的查询操作,除了开放防火墙规则外,还需调整主配置文件 (`postgresql.conf`) 中有关 listen_addresses 和 host-based authentication (HBA) records 的设定项。可以通过编辑挂载点的方式直接修改这些参数,或者借助初始化脚本来完成自动化定制过程。 例如,可以在启动选项里加入自定义配置目录作为附加卷绑定进去: ```bash -v /path/to/custom/conf.d/:/etc/postgresql/postgresql.conf.d/ ``` 其中放置含有适当更改后的 `.conf` 文件片段即可生效。 另外值得注意的是,当涉及到敏感信息保护时,建议采用 SSL/TLS 加密传输通道以增强通信链路的安全等级。 #### 测试连通性验证成功与否 最后可选用 psql 工具或者其他图形界面应用程序尝试与新设立的服务节点建立会话链接,确认一切正常运作无误之后即宣告整个流程圆满结束。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

MonkeyKing.sun

对你有帮助的话,可以打赏

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值