Files
k3s/002-infra/001-registry/registry-ui.yaml
2026-02-05 00:11:05 +08:00

85 lines
1.8 KiB
YAML

# Joxit Docker Registry UI - 轻量级 Web 界面
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: registry-ui
namespace: registry-system
spec:
replicas: 1
selector:
matchLabels:
app: registry-ui
template:
metadata:
labels:
app: registry-ui
spec:
containers:
- name: registry-ui
image: joxit/docker-registry-ui:latest
ports:
- containerPort: 80
env:
# Registry API 地址(通过 nginx 代理,避免混合内容问题)
- name: NGINX_PROXY_PASS_URL
value: "http://registry-service.registry-system.svc.cluster.local"
# 允许删除镜像
- name: DELETE_IMAGES
value: "true"
# 显示内容摘要
- name: SHOW_CONTENT_DIGEST
value: "true"
# 单个 registry 模式
- name: SINGLE_REGISTRY
value: "true"
# Registry 标题
- name: REGISTRY_TITLE
value: "U9 Docker Registry"
# 启用搜索功能
- name: CATALOG_ELEMENTS_LIMIT
value: "1000"
---
# UI 服务
apiVersion: v1
kind: Service
metadata:
name: registry-ui-service
namespace: registry-system
spec:
selector:
app: registry-ui
ports:
- protocol: TCP
port: 80
targetPort: 80
---
# 暴露 UI 到外网
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: registry-ui-ingress
namespace: registry-system
annotations:
cert-manager.io/cluster-issuer: letsencrypt-prod
spec:
rules:
- host: registry-ui.u6.net3w.com
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: registry-ui-service
port:
number: 80
tls:
- hosts:
- registry-ui.u6.net3w.com
secretName: registry-ui-tls-secret