registry
使用 Pigsty 部署 Docker Registry 镜像代理和私有仓库
registry 配置模板提供了部署 Docker Registry 镜像代理的参考配置,可用作 Docker Hub 镜像加速或私有镜像仓库。
更多细节,请参考 Registry 部署教程
配置概览
- 配置名称:
registry(位于app/registry.yml) - 节点数量: 单节点
- 配置说明:部署 Docker Registry 镜像代理和私有仓库
- 适用系统:
el8,el9,d12,u22,u24 - 适用架构:
x86_64,aarch64 - 相关配置:
meta
启用方式:
./configure -c app/registry [-i <primary_ip>]
配置内容
源文件地址:pigsty/conf/app/registry.yml
all:
children:
# Docker Registry 镜像代理
registry:
hosts: { 10.10.10.10: {} }
vars:
app: registry
apps:
registry:
file:
- { path: /data/registry ,state: directory ,mode: 0755 }
conf:
REGISTRY_DATA: /data/registry
REGISTRY_PORT: 5000
REGISTRY_UI_PORT: 5080
REGISTRY_STORAGE_DELETE_ENABLED: true
REGISTRY_LOG_LEVEL: info
REGISTRY_PROXY_REMOTEURL: https://registry-1.docker.io
REGISTRY_PROXY_TTL: 168h # 缓存 7 天
infra: { hosts: { 10.10.10.10: { infra_seq: 1 } } }
etcd: { hosts: { 10.10.10.10: { etcd_seq: 1 } }, vars: { etcd_cluster: etcd } }
vars:
version: v4.0.0
admin_ip: 10.10.10.10
region: default
infra_portal:
home : { domain: i.pigsty }
registry : { domain: d.pigsty ,endpoint: "10.10.10.10:5000" ,certbot: d.pigsty }
registry-ui : { domain: dui.pigsty ,endpoint: "10.10.10.10:5080" }
repo_enabled: false
node_repo_modules: node,infra,pgsql
pg_version: 18
#----------------------------------------------#
# PASSWORD
#----------------------------------------------#
grafana_admin_password: pigsty
pg_admin_password: DBUser.DBA
# ... 更多密码配置
配置解读
registry 模板提供了 Docker Registry 镜像代理的一键部署方案。
Registry 是什么:
- Docker 官方的镜像仓库实现
- 可作为 Docker Hub 的拉取代理(Pull-through Cache)
- 也可作为私有镜像仓库使用
- 支持镜像缓存和本地存储
关键特性:
- 作为 Docker Hub 的代理缓存,加速镜像拉取
- 缓存镜像到本地存储
/data/registry - 提供 Web UI 界面查看缓存的镜像
- 支持自定义缓存过期时间
部署步骤:
curl -fsSL https://repo.pigsty.io/get | bash
./configure -c app/registry
vi pigsty.yml # 修改域名
./install.yml # 安装 Pigsty 基础设施
./docker.yml # 安装 Docker
./app.yml # 启动 Registry 容器
配置 Docker 客户端:
# 编辑 /etc/docker/daemon.json
{
"registry-mirrors": ["https://d.pigsty"],
"insecure-registries": ["d.pigsty"]
}
# 重启 Docker
sudo systemctl restart docker
访问方式:
# Registry API
https://d.pigsty/v2/_catalog
# Web UI
http://dui.pigsty:5080
# 拉取镜像(自动使用代理)
docker pull nginx:latest
适用场景:
- 加速 Docker 镜像拉取(尤其在中国大陆)
- 减少对外网络依赖
- 企业内部私有镜像仓库
- 离线环境镜像分发
注意事项:
- 需要足够的磁盘空间存储缓存镜像
- 默认缓存 7 天(
REGISTRY_PROXY_TTL: 168h) - 可配置 HTTPS 证书(通过 certbot)
- 也可作为推送目标存储私有镜像