《PolarDB for PostgreSQL源码与应用实战》——PolarDB for PostgreSQL 基础入门(2) https://developer.aliyun.com/article/1232840?groupCode=polardbforpg
(五)Docker 部署
下面我们讲第二种部署方式,Docker方式部署。
1、Docker 环境部署
编译Docker Image:
$sudo docker build -t polardb-for-postgresql-yw -f ./docker/Dockerfile . $sudo docker images
运行Docker Image:
$ sudo docker run --name polardb -p 10001:10001 -d polardb-for-postgresql-yw :latest $sudo docker ps
本地访问Docker Image:
$ psql -d postgres -U postgres -h localhost -p 10001
登录Docker Container:
$ docker exec -it polardb /bin/bash
2、Docker 部署原理
这里可以看到,首先我们用 docker build 的来创建一个docker的镜像,它的参数f指的是我们自己写了一个docker的配置文件,因为配置文件来build我们的环境,现在镜像的名字就是我的名字。
之后我们可以查看一下镜像的构建情况,之后会演示一下如何运行Docker,运行这个Docker之后可以看一下容器的情况,包括我们在运行Docker的时候,Docker内部的端口和外部的端口情况。
另外看一下我们从外边连接Docker,看怎么去访问Docker,里面已经安装好了这套实例。另外我们会演示一下,进入到Docker去看一下它进程的各方面是否跟原来在外边部署的情况不一样。
接下来看一下Docker的部署演示。
这个是我准备的另一台机器,为了防止之前的有干扰,运行之后大家可以看到,这个过程包含了14个步骤。首先下载
centOS之后,安装相关的依赖软件包,之后进行相关的系统里边用户的创建,包括cmake的一些配置,最后是调用一些类似ssh keygen来产生互信相关的一些key,最后会调用onekey来进行整个集群的安装。调用了这个之后,整个Docker里就安装了三副本的环境,用的也是onekey的默认参数配置来实现的,后面我们就可以连接进行一些查看。
这里面可以看到14个步骤都成功以后,会告诉我们创建成功。
之后可以查看一下它的建好Image,就可以把docker的Image给它run起来。docker Image启动起来之后,我们还是用
刚才的这条命令,通过PSQL来访问Docker的环境,之后我们用命令可以看到Docker的启动状态,现在也是用PSQL连
Docker,连接的用户使用我们默认给Docker里面创建的PostgresSQL的用户来连接,连接的时候也是访问了这条查询语
句去查询Docker里的主备状态,之后我们再登录到Docker里面去看一下。
可以看到已经进入到Docker这个机器里了,看到我们刚才的程序,还有我们安装的数据都是在的。可以看到进程包括dn_
master、dn_slave,还有dn_leaner都是存在的,这意味着Docker环境已经成功。
《PolarDB for PostgreSQL源码与应用实战》——PolarDB for PostgreSQL 基础入门(4) https://developer.aliyun.com/article/1232837?groupCode=polardbforpg