Linux 软件源

用于交付 PostgreSQL 扩展的基础设施和软件包仓库

Pigsty 为主流 Linux 发行版 提供了 PostgreSQL 扩展仓库,其中包含 340+ 额外的 PostgreSQL 扩展。

Pigsty 扩展仓库旨在与 PGDG 官方仓库配合使用,共同使用时可以安装多达 400+ PostgreSQL 扩展

PGSQL 仓库描述链接
PGSQL 仓库Pigsty PG 扩展仓库,340+ 额外扩展pgsql.md
INFRA 仓库Pigsty 基础设施仓库,监控/工具软件infra.md
PGDG 仓库PGDG 官方仓库镜像,PG 内核pgdg.md
GPG 密钥GPG 公钥,签名验证gpg.md

兼容性概览

系统 / 架构代码x86_64aarch64
EL8el818 17 16 15 14 1318 17 16 15 14 13
EL9el918 17 16 15 14 1318 17 16 15 14 13
EL10el1018 17 16 15 14 1318 17 16 15 14 13
Debian 12d1218 17 16 15 14 1318 17 16 15 14 13
Debian 13d1318 17 16 15 14 1318 17 16 15 14 13
Ubuntu 22.04u2218 17 16 15 14 1318 17 16 15 14 13
Ubuntu 24.04u2418 17 16 15 14 1318 17 16 15 14 13

快速上手

你可以使用 pig 命令行工具来方便地启用 infra 和 pgsql 仓库:

curl https://repo.pigsty.io/pig | bash      # 下载安装最新版本的 pig 命令行工具
pig repo add all -u                         # 添加 Linux / PGDG / Pigsty 仓库并更新缓存
curl https://repo.pigsty.cc/pig | bash      # 从中国镜像站下载安装最新版本的 pig 命令行工具
pig repo add -u                             # 添加 Linux / PGDG / Pigsty 仓库并更新缓存

手工添加

您也可以使用经典的 apt / dnf / yum 命令,将仓库手工添加到系统中。

# 将 Pigsty 的 GPG 公钥添加到系统密钥链中,以验证软件包签名
curl -fsSL https://repo.pigsty.io/key | sudo gpg --dearmor -o /etc/apt/keyrings/pigsty.gpg

# 获取 Debian / Ubuntu 发行版的代号(jammy, focal, bullseye, bookworm),并将相应的上游仓库地址写入 /etc/apt/sources.list.d/ 中
distro_codename=$(lsb_release -cs)
sudo tee /etc/apt/sources.list.d/pigsty-io.list > /dev/null <<EOF
deb [signed-by=/etc/apt/keyrings/pigsty.gpg] https://repo.pigsty.io/apt/infra generic main
deb [signed-by=/etc/apt/keyrings/pigsty.gpg] https://repo.pigsty.io/apt/pgsql/${distro_codename} ${distro_codename} main
EOF

# 刷新 APT 仓库缓存
sudo apt update
# 将 Pigsty 的 GPG 公钥添加到系统密钥链中,以验证软件包签名
curl -fsSL https://repo.pigsty.io/key | sudo tee /etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty >/dev/null

# 将 Pigsty 仓库的定义写入 /etc/yum.repos.d/ 目录中
sudo tee /etc/yum.repos.d/pigsty-io.repo > /dev/null <<-'EOF'
[pigsty-infra]
name=Pigsty Infra for $basearch
baseurl=https://repo.pigsty.io/yum/infra/$basearch
skip_if_unavailable = 1
enabled = 1
priority = 1
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty
module_hotfixes=1

[pigsty-pgsql]
name=Pigsty PGSQL For el$releasever.$basearch
baseurl=https://repo.pigsty.io/yum/pgsql/el$releasever.$basearch
skip_if_unavailable = 1
enabled = 1
priority = 1
gpgcheck = 1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-pigsty
module_hotfixes=1
EOF

# 刷新 YUM 仓库缓存
sudo yum makecache;

所有的 RPM / DEB 软件包都使用指纹为 (B9BD8B20) 的 GPG 密钥 进行签名,以确保软件包的完整性。


仓库组成

Pigsty 仓库由两个主要部分组成:INFRAPGSQL,提供 x86_64aarch64 架构下的 DEB / RPM 包。

INFRA 仓库中的软件包与 PostgreSQL / Linux 大版本无关,包括 Prometheus、Grafana、以及一些 PostgreSQL 管理工具, 通常由 Go 等语言编写的,只有芯片架构(x86_64 | aarch64)的区别。

Linux软件包x86_64aarch64
ELrpm
Debiandeb

PGSQL 仓库中的软件包通常特定于 Linux 大版本(例如 el9, d12),也通常与 PostgreSQL 大版本相关(例如 pg17,pg16 )。 这个仓库中包含了 PostgreSQL 内核分支、扩展插件与工具,通常由类 C 语言编写。


兼容性详情

OS 系统代码厂商大版本小版本全名PG 大版本备注
el7.x86_64EL77.9CentOS 7 x8615 14 13EOL
el8.x86_64EL88.10RockyLinux 8 x8618 17 16 15 14 13即将 EOL
el8.aarch64EL88.10RockyLinux 8 ARM18 17 16 15 14 13即将 EOL
el9.x86_64EL99.6RockyLinux 9 x8618 17 16 15 14 13OK
el9.aarch64EL99.6RockyLinux 9 ARM18 17 16 15 14 13OK
el10.x86_64EL1010.0RockyLinux 10 x8618 17 16 15 14 13OK
el10.aarch64EL1010.0RockyLinux 10 ARM18 17 16 15 14 13OK
d11.x86_64Debian1111.11Debian 11 x8617 16 15 14 13EOL
d11.aarch64Debian1111.11Debian 11 ARM17 16 15 14 13EOL
d12.x86_64Debian1212.12Debian 12 x8618 17 16 15 14 13OK
d12.aarch64Debian1212.12Debian 12 ARM18 17 16 15 14 13OK
d13.x86_64Debian1313.1Debian 13 x8618 17 16 15 14 13OK
d13.aarch64Debian1313.1Debian 13 ARM18 17 16 15 14 13OK
u20.x86_64Ubuntu2020.04.6Ubuntu 20.04 x8617 16 15 14 13EOL
u20.aarch64Ubuntu2020.04.6Ubuntu 20.04 ARM17 16 15 14 13EOL
u22.x86_64Ubuntu2222.04.5Ubuntu 22.04 x8618 17 16 15 14 13OK
u22.aarch64Ubuntu2222.04.5Ubuntu 22.04 ARM18 17 16 15 14 13OK
u24.x86_64Ubuntu2424.04.3Ubuntu 24.04 x8618 17 16 15 14 13OK
u24.aarch64Ubuntu2424.04.3Ubuntu 24.04 ARM18 17 16 15 14 13OK

源代码

用于构建仓库内软件的源代码文件位于以下仓库中:


INFRA 仓库

可观测性/PostgreSQL 工具软件仓库,Linux 发行版大版本无关的软件包

PGSQL 仓库

PostgreSQL 扩展和内核分支仓库

PGDG 仓库

PostgreSQL 官方 APT/YUM 仓库

GPG 密钥

导入 Pigsty 仓库使用的 GPG 公钥以验证软件包签名完整性