基于centos镜像和GaussDB T 1.2.1安装包 制作GaussDB T 1.2.1集群docker镜像,用来部署再不同节点上
时间: 2024-05-15 19:14:57 浏览: 258
1. 下载centos镜像和GaussDB T 1.2.1安装包
从官方网站下载CentOS镜像和GaussDB T 1.2.1安装包,保存到本地。
2. 构建Dockerfile
在本地创建一个文件夹,命名为gaussdb-t,用于构建Dockerfile文件。在文件夹内创建Dockerfile文件,编辑如下:
```
FROM centos:7
# 安装必要软件
RUN yum -y update && \
yum -y install wget && \
yum -y install tar && \
yum -y install net-tools && \
yum -y install gcc && \
yum -y install make && \
yum -y install perl
# 设置环境变量
ENV PGHOME /opt/opengauss
ENV PATH $PGHOME/bin:$PATH
ENV LD_LIBRARY_PATH $PGHOME/lib:$LD_LIBRARY_PATH
ENV LANG en_US.utf8
# 复制GaussDB安装包
COPY ./gaussdb-t-1.2.1-linux.tar.gz /opt
# 解压GaussDB安装包
RUN cd /opt && \
tar -zxvf gaussdb-t-1.2.1-linux.tar.gz && \
rm -rf gaussdb-t-1.2.1-linux.tar.gz
# 创建集群
RUN /opt/gaussdb-t-1.2.1/bin/initdb -D /opt/gaussdb-t-1.2.1/data -U gaussdb && \
echo "host all all 0.0.0.0/0 trust" >> /opt/gaussdb-t-1.2.1/data/pg_hba.conf && \
echo "listen_addresses='*'" >> /opt/gaussdb-t-1.2.1/data/postgresql.conf
# 开放端口
EXPOSE 5432
# 启动集群
CMD ["/opt/gaussdb-t-1.2.1/bin/gaussdb", "-D", "/opt/gaussdb-t-1.2.1/data"]
```
3. 构建镜像
在gaussdb-t文件夹内,打开终端,执行如下命令构建镜像:
```
docker build -t gaussdb-t:1.2.1 .
```
其中,gaussdb-t:1.2.1是镜像的名称和版本号。
4. 创建容器
在不同节点上,创建容器并启动:
```
docker run --name gaussdb-t -d -p 5432:5432 gaussdb-t:1.2.1
```
其中,--name指定容器名称,-d表示容器在后台运行,-p指定端口映射。
5. 验证
在任意节点上,可以通过以下命令验证容器是否成功启动:
```
docker ps
```
如果容器状态为Up,说明容器已成功启动。
6. 连接数据库
在任意节点上,可以通过以下命令连接集群:
```
psql -h <节点IP> -p 5432 -U gaussdb
```
其中,<节点IP>是部署容器的节点IP地址。
7. 部署应用
在任意节点上,可以部署应用并连接到GaussDB集群。
在部署应用时,需要将<节点IP>替换为部署容器的节点IP地址。
```
jdbc:postgresql://<节点IP>:5432/gaussdb
```
阅读全文