1+ ---
2+ apiVersion : kustomize.config.k8s.io/v1beta1
3+ kind : Kustomization
4+ namespace : default
5+ resources :
6+ - dns-endpoint.yaml
7+ - secret.yaml
8+ helmCharts :
9+ - name : zot
10+ namespace : default
11+ releaseName : zot
12+ version : 0.1.87
13+ repo : http://zotregistry.dev/helm-charts
14+ valuesInline :
15+ image :
16+ # Override repo path to get access to different image architectures
17+ repository : ghcr.io/project-zot/zot
18+ serviceAccount :
19+ create : true
20+ serviceHeadless :
21+ enabled : false
22+ ingress :
23+ enabled : true
24+ annotations :
25+ kubernetes.io/ingress.class : public
26+ cert-manager.io/cluster-issuer : lets-encrypt
27+ nginx.ingress.kubernetes.io/proxy-body-size : ' 0'
28+ className : public
29+ hosts :
30+ - host : registry.brhd.io
31+ paths :
32+ - path : /
33+ tls : []
34+ startupProbe :
35+ initialDelaySeconds : 5
36+ periodSeconds : 10
37+ failureThreshold : 3
38+ mountConfig : true
39+ configFiles :
40+ # Refs:
41+ # Authorization: https://zotregistry.dev/latest/articles/authn-authz/
42+ # OIDC: https://zotregistry.dev/latest/articles/authn-authz/#using-openidoauth2-when-zot-is-behind-a-proxy-or-load-balancer
43+ config.json : |-
44+ {
45+ "storage": { "rootDirectory": "/var/lib/registry" },
46+ "http": {
47+ "address": "0.0.0.0",
48+ "port": "5000",
49+ "externalUrl": "https://registry.brhd.io",
50+ "auth": {
51+ "openid": {
52+ "providers": {
53+ "oidc": {
54+ "issuer": "https://auth.brhd.io/application/o/zot/",
55+ "credentialsFile": "secrets/oidc.json",
56+ "scopes": ["openid", "profile", "email"]
57+ }
58+ }
59+ }
60+ },
61+ "accessControl": {
62+ "repositories": {
63+ "**": {
64+ "defaultPolicy": ["read", "create", "update", "delete"],
65+ "anonymousPolicy": ["read"]
66+ }
67+ }
68+ }
69+ },
70+ "log": { "level": "warn" },
71+ "extensions": {
72+ "search": {"enable": true},
73+ "ui": {"enable": true},
74+ "sync": {
75+ "enable": true,
76+ "registries": [
77+ {
78+ "urls": ["https://index.docker.io"],
79+ "content": [{"prefix": "**", "destination": "/docker.io"}],
80+ "onDemand": true,
81+ "tlsVerify": true
82+ },
83+ {
84+ "urls": ["https://ghcr.io"],
85+ "content": [{"prefix": "**", "destination": "/ghcr.io"}],
86+ "onDemand": true,
87+ "tlsVerify": true
88+ },
89+ {
90+ "urls": ["https://quay.io"],
91+ "content": [{"prefix": "**", "destination": "/quay.io"}],
92+ "onDemand": true,
93+ "tlsVerify": true
94+ },
95+ {
96+ "urls": ["https://gcr.io"],
97+ "content": [{"prefix": "**", "destination": "/gcr.io"}],
98+ "onDemand": true,
99+ "tlsVerify": true
100+ },
101+ {
102+ "urls": ["https://registry.k8s.io"],
103+ "content": [{"prefix": "**", "destination": "/k8s.io"}],
104+ "onDemand": true,
105+ "tlsVerify": true
106+ }
107+ ]
108+ },
109+ "scrub": {
110+ "interval": "24h"
111+ }
112+ }
113+ }
114+ externalSecrets :
115+ - secretName : zot-oidc
116+ mountPath : /secrets
117+ persistence : true
118+ pvc :
119+ create : true
120+ accessModes : ["ReadWriteOnce"]
121+ storage : 5Gi
122+ storageClassName : openebs-hostpath
123+ env : []
124+ strategy :
125+ type : RollingUpdate
126+ metrics :
127+ enabled : false
128+ serviceMonitor :
129+ enabled : false
130+ patches :
131+ - path : patch.yaml
0 commit comments