Docker安装Postgresql

news2024/11/15 4:14:36

测试环境:

Centos7.x + docker1.13.1 + postgres12

本文使用的是在镜像仓库直接pull的方式,非Dockfile的方式。

Postgresql的Dockerfile参考:https://github.com/docker-library/postgres/blob/master/12/alpine/Dockerfile

常用命令

docker命令大全:https://www.runoob.com/docker/docker-command-manual.html

请注意区分“镜像”和“容器”的。先创建镜像,然后通过镜像创建容器,一个镜像可以有多个容器。

镜像常用命令

命令

作用

docker image list

查询镜像列表

docker rmi -f 镜像ID

通过镜像ID删除

容器常用命令

docker run

容器运行

docker start/stop/restart

启动/停止/重启

docker rm 容器ID

删除容器

docker ps

容器查询,-a -q

docker exec -it 容器ID /bin/sh

进入容器命令行

docker volume create xxx

创建容器共享数据卷

docker volume inspect xxx

容器共享数据卷落盘

1.查询docker镜像

# docker search postgres

2.下载docker镜像

# docker pull postgres:12.7

下载后,镜像查询,# docker image list

3.创建本地卷

数据卷可以再容器之间共享

docker volume create PGDATA
docker volume inspect PGDATA
    {
        "Driver": "local",
        "Labels": {},
        "Mountpoint": "/var/lib/docker/volumes/PGDATA/_data",
        "Name": "PGDATA",
        "Options": {},
        "Scope": "local"
    }
]

Mountpoint属性路径就是将来容器的data目录。

4.运行容器

docker run --name postgres12 -e POSTGRES_PASSWORD=postgres -p 5433:5432 -v PGDATA:/var/lib/postgresql/data -d postgres:12.7
  1. run:创建并运行一个容器

  1. --name:容器名称

  1. -e POSTGRES_PASSWORD:数据库密码

  1. -p:映射端口。前面端口是对外端口,后面端口是容器内使用端口。

  1. -v:PGDATA挂载到容器的/var/lib/postgresql/data (因为pg的Dockerfile声明的目录)

  1. -d postgres:12.7:使用image镜像的名称

返回一串字符,就是启动的容器ID。

容器ID:b8e40f13e2f3
镜像名称:postgres:12.7
对外暴露端口:5433
容器名称:postgres12
pg数据库默认密码:postgres

5.查看日志

# docker logs b8e40f13e2f3

[root@sougou opt]# docker logs b8e40f13e2f3
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".
The default database encoding has accordingly been set to "UTF8".
The default text search configuration will be set to "english".
...
2023-01-31 07:29:59.706 UTC [1] LOG:  starting PostgreSQL 12.7 (Debian 12.7-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
2023-01-31 07:29:59.707 UTC [1] LOG:  listening on IPv4 address "0.0.0.0", port 5432
2023-01-31 07:29:59.707 UTC [1] LOG:  listening on IPv6 address "::", port 5432
2023-01-31 07:29:59.713 UTC [1] LOG:  listening on Unix socket "/var/run/postgresql/.s.PGSQL.5432"
2023-01-31 07:29:59.730 UTC [63] LOG:  database system was shut down at 2023-01-31 07:29:59 UTC
2023-01-31 07:29:59.734 UTC [1] LOG:  database system is ready to accept connections

6.进入容器使用psql

# docker exec -it b8e40f13e2f3 /bin/sh

root@sougou opt]# docker exec -it b8e40f13e2f3 /bin/sh
# psql -U postgres -p 5432
psql (12.7 (Debian 12.7-1.pgdg100+1))
Type "help" for help.

postgres=# select version();
                                                     version                                                      
------------------------------------------------------------------------------------------------------------------
 PostgreSQL 12.7 (Debian 12.7-1.pgdg100+1) on x86_64-pc-linux-gnu, compiled by gcc (Debian 8.3.0-6) 8.3.0, 64-bit
(1 row)
# exit

7.使用数据库管理工具连接

到此结束。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/188235.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

MySQL的卸载

步骤1:停止MySQL服务 在卸载之前,先停止MySQL8.0的服务。右击“此电脑“,选择”管理“,可以在“服务”列表找到“MySQL8.0”的服务,如果现在“正在运行”状态,可以右键单击服务,选择“停止”选…

java基础巩固-宇宙第一AiYWM:为了维持生计,大数据之Kafka【Kafka的概念、单机及集群部署】~整起

Rust一、Kafka基本概念1.Kafka是什么?Kafka与Flume?2.Kafka的整体架构:3.kafka的生产者与消费者:4.kafka的Topic与日志、分区【分区可以提高咱们kafka的写入能力和存储能力】5.kafka的顺序写入:6.kafka的零拷贝技术7.k…

MQ 队列消息

消息中间件利用高效可靠的消息传递机制进行平台无关的数据交流,并基于数据通信来进行分布式系统的集成,通过提供消息传递和消息排队模型,它可以在分布式环境下拓展进程间的通信,对于消息中间件,常见的角色大致也就有Producer(生产者).Consumer(消费者) MQ 消息中间件 消息队列 …

【数据结构基础】树 - 基础和Overview

知识体系结构树树是一种数据结构,它是n(n>0)个节点的有限集。n0时称为空树。n>0时,有限集的元素构成一个具有层次感的数据结构。区别于线性表一对一的元素关系,树中的节点是一对多的关系。树具有以下特点:n>0时,根节点是…

Linux嵌入式开发——文件权限

文章目录Linux嵌入式开发——文件权限文件权限文件权限管理修改文件权限修改文件所属用户拥有者拥有者组Linux嵌入式开发——文件权限 文件权限 文件权限是指不同的用户或用户组对某个文件拥有的权限,文件的权限分为三种,并且可以使用二进制表示文件权…

kerberos环境下parcel方式部署flink1.15.3 基于CDH6.3.2 Flink on Yarn

1.1 Flink on Yarn的优势相对于 Standalone 模式,在Yarn 模式下有以下几点好处:1.资源按需使用,提高集群的资源利用率;2.任务有优先级,根据优先级运行作业;3.基于 Yarn 调度系统,能够自动化地处…

通信原理笔记—模拟信号的数字编码

目录 低通与带通信号的抽样定理: 模拟信号数字编码的基本概念: 模拟信号的抽样: 低通信号的理想抽样: 低通采样定理: 采样方式: 冲激采样示例: 低通信号的自然抽样: 带通抽样…

正版授权|Charles 4 网络封包分析调试工具软件

Charles 4 是一款 HTTP 代理 /HTTP 监视器/反向代理,使开发人员能够查看其机器和 Internet 之间的所有 HTTP 和 SSL / HTTPS流量。这包括请求、响应和 HTTP 标头(包含 Cookie 和缓存信息)。 授权分类:单许可证 站点许…

Python程序设计-第2章Python程序语句

第2章Python程序语句一.预习笔记 1.1 if语句 if 条件 : 执行语句 注意:条件后面要有 : 号,其次条件不需要括号包裹,然后执行语句需要有缩进 1.2 if else语句 if 条件 : 执行语句1 else : 执行语句2 注意:条件成立执行语…

Vue3中使用Tinymce富文本编辑器(版本最新)

使用目录前言一、安装方法一(npm、yarn下载)二、安装方法二(下载官网压缩包方法)——推荐总结前言 最近使用了WangEditor编辑器和Tinymce编辑器,使用方法如下(采用的编辑器版本是官网最新的) 汉…

@Configuration 和 @Component 区别

本文参考1:https://blog.csdn.net/isea533/article/details/78072133 本文参考2:https://blog.csdn.net/weixin_52850476/article/details/124410800 一句话概括就是 Configuration 中所有带 Bean 注解的方法都会被动态代理,因此调用该方法…

数据库密码定期轮换(AWS版)

问题 需要定期轮换AWS上面的RDS数据库的密码,而且,需要让业务程序无感知。 思路 AWS有个一个aws-secretsmanager-jdbc库,只要在SpringBoot的基础上面集成即可,就可以使用secrets manager来定期轮换数据库的密码了。 解决步骤 …

Excel VBA 讲座05 - InputBox和MsgBox使用

本篇介绍的内容: 1,当用户使用宏或procedure时,使用InputBox来接收或收集用户输入的信息。 2,根据需求使用IF语句构建逻辑。 3,使用Message Box将信息展示给用户,比如用户输出错误,就提示用户…

np.loadtxt()读取数据

前言 机器学习中使用np.loadtxt()可以高效的导入数据,np.loadtxt()适合.txt文件和.csv文件。但是它默认读取float类型的值。 1.np.loadtxt()读取txt文件 1-1 基础参数 numpy.loadtxt(fname, dtype, comments#, delimiterNone, convertersNone, skiprows0, usecol…

uniapp获取支付宝user_id - 支付宝提现 - 登录授权 - APP支付宝登陆 - H5支付宝授权

效果图 uniapp须知(无奈之处) uniapp绑定支付宝user_id提现 - 方法对比: ==== 不同接口 ==== 【APP支付宝登录】 https://opendocs.alipay.com/open/218/105325 【网站支付宝登录】

PMP证书有什么用?

有没有用看你的考证目的,总的来说就是敲门砖的作用,项目招聘、应聘项目经理都需要pmp 证书。⭕但是事在人为,祈祷考完 PMP 就能升职加薪走上人生巅峰的想法,一纸证书是做不到的。PS:身边有考了 PMP 之后跳槽薪资涨幅 3…

阳康后身体还是不舒服怎么办?

很多年轻朋友阳康后恢复的还可以,逐渐回到以前的身体状态,但是家里老人体质偏弱,恢复情况就没那么乐观了。有些还一直伴随着没有嗅觉、疲惫、咳嗽等后遗症。要让老人快速恢复健康,生病后一定要注意这几点:每天保证7-8小…

测试开发中的虫剂悖论

测试开发中的虫剂悖论 1 初识虫剂悖论 提到 虫剂悖论(pesticide paradox),我相信很多人都没听说的,除非是生物学专业的同学或者老师。 虫剂悖论描述的是重复使用某种农药杀灭害虫,时间越久,杀虫的效果就越差。 之所以这样&#xf…

压阻式(压)力传感器-个人笔记

这是个人笔记 最终要求,单个的压阻式压力传感器、阵列之后的压力传感器、三维力传感器 关键词:力传感器,压力传感器,多轴力传感器,应变式传感器,应变式力传感器,电阻应变式传感器,f…

除 svn、Testlink 外,还有哪些不错的测试用例管理工具?

类似TestLink的 9 大测试用例管理平台:1、PingCode;2、TestRail;3、Xray;4、Jira;5、PractiTest;6、PractiTest;7. Zephyr Enterprise;8、MeterSphere;9、Bugzilla。一、…