postgres

openeuler/postgres Docker Image

基于openEuler构建的官方PostgreSQL Docker镜像,由openEuler CloudNative SIG维护,支持多种PostgreSQL版本和架构(amd64/arm64),提供可靠、高性能的开源关系型数据库服务,适用于各类数据库部署场景。

下载次数: 0状态:社区镜像维护者:openEuler 官方容器镜像仓库类型:镜像最近更新:2 天前

PostgreSQL | openEuler Docker镜像文档

镜像概述

本镜像为基于https://repo.openeuler.org/构建的PostgreSQL官方Docker镜像,由https://gitee.com/openeuler/cloudnative维护。该镜像免费使用,无每用户速率限制,提供稳定可靠的开源关系型数据库服务。

PostgreSQL是一款功能强大的开源对象关系型数据库系统,拥有超过35年的活跃开发历史,以可靠性、功能健壮性和高性能著称。更多信息请访问https://www.postgresql.org/。

核心功能与特性

  • 基于openEuler操作系统构建,确保系统级稳定性与安全性
  • 支持多种PostgreSQL版本与openEuler版本组合
  • 兼容amd64和arm64两种架构
  • 提供完整的PostgreSQL数据库功能,包括ACID事务、高级索引、JSON支持等
  • 支持数据持久化存储与自定义配置

支持的标签及Dockerfile链接

每个postgres镜像标签由PostgreSQL版本和基础镜像版本组成,具体如下:

标签当前版本信息支持架构
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/13.3/22.03-lts/Dockerfile基于openEuler 22.03-LTS的Postgres 13.3amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/16.2/22.03-lts-sp3/Dockerfile基于openEuler 22.03-LTS-SP3的Postgres 16.2amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.0/22.03-lts-sp1/Dockerfile基于openEuler 22.03-LTS-SP1的Postgres 17.0amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.0/22.03-lts-sp3/Dockerfile基于openEuler 22.03-LTS-SP3的Postgres 17.0amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.0/22.03-lts-sp4/Dockerfile基于openEuler 22.03-LTS-SP4的Postgres 17.0amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.0/24.03-lts/Dockerfile基于openEuler 24.03-LTS的Postgres 17.0amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.5/24.03-lts-sp1/Dockerfile基于openEuler 24.03-LTS-SP1的Postgres 17.5amd64, arm64
https://gitee.com/openeuler/openeuler-docker-images/blob/master/Database/postgres/17.6/24.03-lts-sp2/Dockerfile基于openEuler 24.03-LTS-SP2的Postgres 17.6amd64, arm64

使用方法

用户可根据需求选择相应的{Tag}和容器启动选项。

拉取镜像

bash
docker pull docker.xuanyuan.run/openeuler/postgres:{Tag}

启动PostgreSQL实例

bash
docker run -d --name my-postgres -p 30432:5432 -e POSTGRES_PASSWORD=PostgreSQL@123 docker.xuanyuan.run/openeuler/postgres:{Tag}

实例my-postgres启动后,可通过http://localhost:30432访问PostgreSQL服务。

容器启动选项

选项描述
-p 30432:5432将PostgreSQL服务暴露在localhost:30432
-e POSTGRES_PASSWORD=passwd设置默认超级用户postgres的密码。注意:本地连接可能无需密码,但外部连接(如其他容器)需要密码。此选项为必填项,且不能为空
-e POSTGRES_USER=postgres创建具有超级用户权限的新用户,需与POSTGRES_PASSWORD配合使用
-e POSTGRES_INITDB_ARGS="--data-checksums"传递参数给postgres initdb命令
-e POSTGRES_DB=postgres设置默认数据库名称
-e POSTGRES_INITDB_WALDIR设置Postgres事务日志位置,默认存储在主数据文件夹(PGDATA)的子目录中
-e POSTGRES_HOST_AUTH_METHOD=trust设置host连接的认证方式,适用于所有数据库、用户和地址。若设置此选项,将在pg_hba.conf中添加:host all all all $POSTGRES_HOST_AUTH_METHOD
-e PGDATA=/path/to/location设置数据库文件存储位置,默认值为/var/lib/postgresql/data
-v /path/to/postgresql.conf:/etc/postgresql/postgresql.conf挂载本地配置文件postgresql.conf
-v /path/to/persisted/data:/var/lib/postgresql/data持久化数据,避免每次启动新容器时重新初始化数据库

查看容器运行日志

bash
docker logs -f my-postgres

获取交互式shell

bash
docker exec -it my-postgres /bin/bash

问题与反馈

如有任何问题或需要使用特殊功能,请在https://gitee.com/openeuler/openeuler-docker-images提交issue或pull request。

获取帮助

  • https://gitee.com/openeuler/cloudnative
  • https://gitee.com/openeuler/community

镜像拉取方式

您可以使用以下命令拉取该镜像。请将 <标签> 替换为具体的标签版本。如需查看所有可用标签版本,请访问 标签列表。

轩辕镜像加速拉取命令点我查看更多 postgres 镜像标签

docker pull docker.xuanyuan.run/openeuler/postgres:<标签>

DockerHub 原生拉取命令

docker pull openeuler/postgres:<标签>
专业版 · 高速稳定拉取镜像
50GB 仅 ¥8/年
高速镜像下载在线技术支持99.95% SLA 保障付费会员免广告