Skip to content

Commit 8f679ad

Browse files
committed
feat(dru): deploy
1 parent f574cb0 commit 8f679ad

5 files changed

Lines changed: 156 additions & 0 deletions

File tree

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
---
2+
# yaml-language-server: $schema=https://crd.kantai.xyz/external-secrets.io/externalsecret_v1.json
3+
apiVersion: external-secrets.io/v1
4+
kind: ExternalSecret
5+
metadata:
6+
name: docker-registry-ui
7+
spec:
8+
secretStoreRef:
9+
kind: ClusterSecretStore
10+
name: onepassword
11+
target:
12+
name: docker-registry-ui
13+
data:
14+
- secretKey: OIDC_CLIENT_SECRET
15+
remoteRef:
16+
key: docker-registry-ui/OIDC_CLIENT_SECRET
17+
---
18+
# yaml-language-server: $schema=https://crd.kantai.xyz/external-secrets.io/externalsecret_v1.json
19+
apiVersion: external-secrets.io/v1
20+
kind: ExternalSecret
21+
metadata:
22+
name: docker-registry-ui-keys
23+
spec:
24+
refreshInterval: "0"
25+
secretStoreRef:
26+
kind: ClusterSecretStore
27+
name: onepassword
28+
target:
29+
name: docker-registry-ui-keys
30+
dataFrom:
31+
- sourceRef:
32+
generatorRef:
33+
apiVersion: generators.external-secrets.io/v1alpha1
34+
kind: Password
35+
name: password32
36+
rewrite:
37+
- regexp:
38+
source: "password"
39+
target: "SESSION_SECRET"
Lines changed: 86 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,86 @@
1+
---
2+
# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s-labs/helm-charts/refs/heads/main/charts/other/app-template/schemas/helmrelease-helm-v2.schema.json
3+
apiVersion: helm.toolkit.fluxcd.io/v2
4+
kind: HelmRelease
5+
metadata:
6+
name: docker-registry-ui
7+
spec:
8+
interval: 1h
9+
chartRef:
10+
kind: OCIRepository
11+
name: app-template
12+
namespace: flux-system
13+
values:
14+
controllers:
15+
docker-registry-ui:
16+
annotations:
17+
reloader.stakater.com/auto: "true"
18+
containers:
19+
app:
20+
image:
21+
repository: ghcr.io/eznix86/docker-registry-ui
22+
tag: 1.4.0@sha256:55033ce39c35bdb85112693ff58dc691872774c31ac649a8cbeb5214e1f803fc
23+
env:
24+
DATABASE_CONNECTION: sqlite
25+
DATABASE_URL: /data/ui.db
26+
OIDC_CLIENT_ID: a15e3f2f-c421-44f3-bf79-b9bde6577a22
27+
OIDC_ISSUER_URL: https://pid.kantai.xyz
28+
OIDC_REDIRECT_URI: https://${APP_SUBDOMAIN:-${APP}}.kantai.xyz/oauth/callback
29+
REGISTRY_SETTINGS_ETINCELLE_PUBLIC_HOST: registry.etincelle.cloud
30+
REGISTRY_SETTINGS_PUBLIC_HOST: registry.kantai.xyz
31+
REGISTRY_URL_ETINCELLE: https://registry.etincelle.cloud
32+
REGISTRY_URL: http://zot.default.svc.cluster.local:5000
33+
SERVER_HOST: 0.0.0.0
34+
SERVER_PORT: &port 3000
35+
TZ: America/Los_Angeles
36+
envFrom:
37+
- secretRef:
38+
name: docker-registry-ui
39+
- secretRef:
40+
name: docker-registry-ui-keys
41+
probes:
42+
liveness: &probe
43+
enabled: true
44+
custom: true
45+
spec:
46+
httpGet:
47+
path: /
48+
port: *port
49+
readiness: *probe
50+
securityContext:
51+
allowPrivilegeEscalation: false
52+
capabilities: { drop: ["ALL"] }
53+
readOnlyRootFilesystem: true
54+
defaultPodOptions:
55+
securityContext:
56+
runAsNonRoot: true
57+
runAsUser: 1000
58+
runAsGroup: 1000
59+
fsGroup: 1000
60+
fsGroupChangePolicy: OnRootMismatch
61+
persistence:
62+
data:
63+
existingClaim: ${APP}
64+
globalMounts:
65+
- path: /data
66+
tmp:
67+
type: emptyDir
68+
globalMounts:
69+
- path: /tmp
70+
route:
71+
app:
72+
hostnames:
73+
- "${APP_SUBDOMAIN:-${APP}}.kantai.xyz"
74+
parentRefs:
75+
- name: envoy-internal
76+
namespace: network
77+
rules:
78+
- backendRefs:
79+
- port: *port
80+
name: app
81+
service:
82+
app:
83+
controller: docker-registry-ui
84+
ports:
85+
http:
86+
port: *port
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
---
2+
# yaml-language-server: $schema=https://json.schemastore.org/kustomization
3+
apiVersion: kustomize.config.k8s.io/v1beta1
4+
kind: Kustomization
5+
resources:
6+
- ./externalsecret.yaml
7+
- ./helmrelease.yaml
Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
---
2+
# yaml-language-server: $schema=https://crd.kantai.xyz/kustomize.toolkit.fluxcd.io/kustomization_v1.json
3+
apiVersion: kustomize.toolkit.fluxcd.io/v1
4+
kind: Kustomization
5+
metadata:
6+
name: &app docker-registry-ui
7+
spec:
8+
components:
9+
- ../../../../components/volsync
10+
path: ./kubernetes/apps/default/docker-registry-ui/app
11+
prune: true
12+
sourceRef:
13+
kind: GitRepository
14+
name: flux-system
15+
namespace: flux-system
16+
interval: 1h
17+
retryInterval: 2m
18+
timeout: 5m
19+
postBuild:
20+
substitute:
21+
APP: *app
22+
APP_SUBDOMAIN: dru
23+
VOLSYNC_CAPACITY: 1Gi

kubernetes/apps/default/kustomization.yaml

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -11,6 +11,7 @@ resources:
1111
- ./changedetection/ks.yaml
1212
- ./crd-schema-publisher/ks.yaml
1313
- ./dawarich/ks.yaml
14+
- ./docker-registry-ui/ks.yaml
1415
# - ./docling/ks.yaml
1516
- ./esphome-device-builder/ks.yaml
1617
- ./etampe/ks.yaml

0 commit comments

Comments
 (0)