lite版本单节点安装_容器

本章节主要介绍通过Docker安装openGauss,方便DevOps用户的安装、配置和环境设置。

构建容器的架构和操作系统版本

  • x86-64 CentOS 7.6

  • ARM64 openEuler 20.03 LTS

配置准备

使用 buildDockerImage.sh脚本构建docker镜像,buildDockerImage.sh是一个方便使用的shell脚本,提供SHA256的检查。buildDockerImage.sh脚本可以从openGauss-server仓库下载。

单机数据库容器安装

创建lite版本openGauss docker镜像

说明:

  • 安装前需要提供openGauss二进制安装包(openGauss-Lite-X.X.X-openEuler20.03-x86_64.tar.gz,X.X.X为openGauss当前版本号)放到 dockerfiles/<version>文件夹。二进制包可以从 https://www.opengauss.org/zh/download/下载,确保有正确的yum源。

  • 安装前需要从华为开源镜像站获取repo文件,并放到openGauss-server/docker/dockerfiles/X.X.X文件夹下面。

## openEuler_aarch64.repo获取方法:
wget -O openEuler_aarch64.repo https://mirrors.huaweicloud.com/repository/conf/openeuler_aarch64.repo
## CentOS-Base.repo获取方法:
wget -O CentOS-Base.repo https://mirrors.huaweicloud.com/repository/conf/CentOS-7-anon.repo
  

在dockerfiles文件夹运行buildDockerImage.sh脚本。

#<version>为对应的dockerfiles目录下的版本号文件夹名称
sh buildDockerImage.sh -i -v <version> -m "lite"

环境变量

为了更灵活的使用openGauss镜像,可以设置额外的参数。未来我们会扩充更多的可控制参数,当前版本支持以下变量的设定。

GS_PASSWORD

使用openGauss镜像的时候,必须设置该参数。该参数值不能为空或者不定义。该参数设置了openGauss数据库的超级用户omm以及测试用户gaussdb的密码。openGauss安装时默认会创建omm超级用户,该用户名暂时无法修改。测试用户gaussdb是在entrypoint.sh中自定义创建的用户。

openGauss镜像配置了本地信任机制,因此在容器内连接数据库无需密码,但是如果要从容器外部(其它主机或者其它容器)连接则必须要输入密码。

openGauss的密码有复杂度要求

密码长度8个字符以上,必须同时包含大写字母、小写字母、数字、以及特殊符号(特殊符号仅包含“#?!@$%^&*-”,并且“!$&”需要用转义符“\”进行转义)。

GS_NODENAME

指定数据库节点名称,默认为gaussdb。

GS_USERNAME

指定数据库连接用户名,默认为gaussdb。

GS_PORT

指定数据库端口,默认为5432。

开启实例

$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 opengauss:X.X.X

从操作系统层面连接数据库

$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -p 8888:5432 opengauss:X.X.X
$ gsql -d postgres -U gaussdb -W'Enmo@123' -h your-host-ip -p 8888  # 宿主机需要安装gsql客户端。

数据持久化

$ docker run --name opengauss --privileged=true -d -e GS_PASSWORD=Enmo@123 -v /opengauss:/var/lib/opengauss opengauss:X.X.X

说明

  1. 对于使用其他版本的数据库构建容器镜像,可以参考openGauss-server/docker/dockerfiles/X.X.X里面的配置文件,只需要修改为对应的版本号即可。

  2. 对于构建openEuler-arm的容器镜像,如果openeuler-20.03-lts:latest镜像下载不下来,可以在openEuler官方网站https://repo.openeuler.org/openEuler-20.03-LTS/docker_img/aarch64/下载容器镜像压缩包openEuler-docker.aarch64.tar.xz,然后使用docker load -i openEuler-docker.aarch64.tar.xz导入到本地镜像列表。

  3. 在进行构建时候,如果遇到yum源下载超时,请检查下代理,也可以在buildDockerImage.sh脚本里面的docker build命令后加上--network host使用宿主机的网络。

意见反馈
编组 3备份
    openGauss 2025-06-07 22:42:35
    取消