扩展仓库
用于交付 PostgreSQL 扩展的基础设施和软件包仓库
Pigsty 为主流 Linux 发行版 提供了一个 PostgreSQL 扩展仓库,其中包含 200+ 额外的 PostgreSQL 扩展。 Pigsty 扩展仓库旨在与 PGDG 官方仓库配合使用,共同使用时可以安装多达 423 个 PostgreSQL 扩展。
快速上手
你可以使用 pig CLI 工具启用 infra 和 pgsql 仓库,或者手动将它们添加到系统中:
curl https://repo.pigsty.io/pig | bash # 下载安装最新版本的 pig 命令行工具
pig repo add all -u # 添加 Linux / PGDG / Pigsty 仓库并更新缓存
# 将 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 仓库由两个主要部分组成:INFRA
和 PGSQL
,提供 x86_64
和 aarch64
架构下的 DEB / RPM 包。
INFRA
仓库中的软件包与 PostgreSQL / Linux 大版本无关,包括 Prometheus、Grafana、以及一些 PostgreSQL 管理工具,
通常由 Go 等语言编写的,只有芯片架构(x86_64
| aarch64
)的区别。
Linux | 软件包 | x86_64 | aarch64 |
---|---|---|---|
EL | rpm | ✓ | ✓ |
Debian | deb | ✓ | ✓ |
PGSQL
仓库中的软件包通常特定于 Linux 大版本(例如 el9, d12),也通常与 PostgreSQL 大版本相关(例如 pg17,pg16 )
这个仓库中包含 了 PostgreSQL 内核疯子、扩展插件与工具,通常由类 C 语言编写。
系统 / 架构 | OS | x86_64 | aarch64 |
---|---|---|---|
EL8 | el8 | 17 16 15 14 13 | 17 16 15 14 13 |
EL9 | el9 | 17 16 15 14 13 | 17 16 15 14 13 |
Debian 12 | d12 | 17 16 15 14 13 | 17 16 15 14 13 |
Ubuntu 22.04 | u22 | 17 16 15 14 13 | 17 16 15 14 13 |
Ubuntu 24.04 | u24 | 17 16 15 14 13 | 17 16 15 14 13 |
Pigsty 仓库的文件的大致目录结构如下所示:
源代码
用于构建仓库内软件的源代码文件位于以下仓库中: