diff --git a/apps/cloud/affine.yaml b/apps/cloud/affine.yaml index da856cd..1f87239 100644 --- a/apps/cloud/affine.yaml +++ b/apps/cloud/affine.yaml @@ -115,7 +115,6 @@ metadata: labels: app: affine spec: - ingressClassName: nginx rules: - host: affine.haven http: diff --git a/apps/cloud/cloudreve.yaml b/apps/cloud/cloudreve.yaml index edd471f..b1e3299 100644 --- a/apps/cloud/cloudreve.yaml +++ b/apps/cloud/cloudreve.yaml @@ -135,7 +135,6 @@ metadata: nginx.ingress.kubernetes.io/proxy-read-timeout: "600" nginx.ingress.kubernetes.io/proxy-send-timeout: "600" spec: - ingressClassName: nginx rules: - host: cloud.haven http: @@ -158,7 +157,6 @@ metadata: nginx.ingress.kubernetes.io/proxy-read-timeout: "600" nginx.ingress.kubernetes.io/proxy-send-timeout: "600" spec: - ingressClassName: nginx rules: - host: cloud.ivanch.me http: diff --git a/apps/cloud/slink.yaml b/apps/cloud/slink.yaml index a38973e..7e07e37 100644 --- a/apps/cloud/slink.yaml +++ b/apps/cloud/slink.yaml @@ -122,7 +122,6 @@ metadata: nginx.ingress.kubernetes.io/proxy-read-timeout: "600" nginx.ingress.kubernetes.io/proxy-send-timeout: "600" spec: - ingressClassName: nginx rules: - host: slink.haven http: diff --git a/apps/default/archivebox.yaml b/apps/default/archivebox.yaml index 3e674ce..dee025d 100644 --- a/apps/default/archivebox.yaml +++ b/apps/default/archivebox.yaml @@ -145,7 +145,6 @@ metadata: name: archivebox-ingress namespace: default spec: - ingressClassName: nginx rules: - host: "archive.haven" http: diff --git a/apps/default/changedetection.yaml b/apps/default/changedetection.yaml index b380ce0..44128fd 100644 --- a/apps/default/changedetection.yaml +++ b/apps/default/changedetection.yaml @@ -140,7 +140,6 @@ metadata: labels: app.kubernetes.io/name: changedetection spec: - ingressClassName: nginx rules: - host: change.haven http: diff --git a/apps/default/homepage.yaml b/apps/default/homepage.yaml index 9d6d64c..04fc585 100644 --- a/apps/default/homepage.yaml +++ b/apps/default/homepage.yaml @@ -192,7 +192,6 @@ metadata: labels: app.kubernetes.io/name: homepage spec: - ingressClassName: nginx rules: - host: "homepage.haven" http: diff --git a/apps/default/it-tools.yaml b/apps/default/it-tools.yaml index d45234d..164956d 100644 --- a/apps/default/it-tools.yaml +++ b/apps/default/it-tools.yaml @@ -53,7 +53,6 @@ metadata: name: it-tools-ingress namespace: default spec: - ingressClassName: nginx rules: - host: "tools.haven" http: diff --git a/apps/default/notepad.yaml b/apps/default/notepad.yaml index 39ad2d4..030b1d8 100644 --- a/apps/default/notepad.yaml +++ b/apps/default/notepad.yaml @@ -77,7 +77,6 @@ metadata: name: notepad namespace: default spec: - ingressClassName: nginx rules: - host: notepad.haven http: diff --git a/apps/default/openwebui.yaml b/apps/default/openwebui.yaml index fbab3ab..18af0dd 100644 --- a/apps/default/openwebui.yaml +++ b/apps/default/openwebui.yaml @@ -94,7 +94,6 @@ metadata: annotations: nginx.ingress.kubernetes.io/proxy-body-size: "50m" spec: - ingressClassName: nginx rules: - host: openwebui.haven http: diff --git a/apps/default/paperless.yaml b/apps/default/paperless.yaml index 66932e1..5b4e745 100644 --- a/apps/default/paperless.yaml +++ b/apps/default/paperless.yaml @@ -137,7 +137,6 @@ metadata: name: paperless namespace: default spec: - ingressClassName: nginx rules: - host: paperless.haven http: diff --git a/apps/default/playwright.yaml b/apps/default/playwright.yaml index b0ed206..94e4840 100644 --- a/apps/default/playwright.yaml +++ b/apps/default/playwright.yaml @@ -18,68 +18,68 @@ spec: affinity: nodeAffinity: preferredDuringSchedulingIgnoredDuringExecution: - - preference: - matchExpressions: - - key: kubernetes.io/hostname - operator: In - values: - - iris - weight: 100 + - preference: + matchExpressions: + - key: kubernetes.io/hostname + operator: In + values: + - iris + weight: 100 containers: - - command: - - npx - - -y - - playwright@1.58.0 - - run-server - - --port - - '3000' - - --host - - 0.0.0.0 - env: - - name: TZ - value: America/Sao_Paulo - image: mcr.microsoft.com/playwright:v1.62.1-noble - imagePullPolicy: Always - name: playwright - ports: - - containerPort: 3000 - protocol: TCP - resources: - limits: - cpu: '4' - memory: 4Gi - requests: - cpu: 500m - memory: 512Mi - terminationMessagePath: /dev/termination-log - terminationMessagePolicy: File - volumeMounts: - - mountPath: /dev/shm - name: dshm + - command: + - npx + - -y + - playwright@1.58.0 + - run-server + - --port + - "3000" + - --host + - 0.0.0.0 + env: + - name: TZ + value: America/Sao_Paulo + image: mcr.microsoft.com/playwright:v1.62.1-noble + imagePullPolicy: Always + name: playwright + ports: + - containerPort: 3000 + protocol: TCP + resources: + limits: + cpu: "4" + memory: 4Gi + requests: + cpu: 500m + memory: 512Mi + terminationMessagePath: /dev/termination-log + terminationMessagePolicy: File + volumeMounts: + - mountPath: /dev/shm + name: dshm dnsPolicy: ClusterFirst restartPolicy: Always schedulerName: default-scheduler securityContext: {} terminationGracePeriodSeconds: 30 volumes: - - emptyDir: - medium: Memory - name: dshm + - emptyDir: + medium: Memory + name: dshm status: availableReplicas: 1 conditions: - - lastTransitionTime: '2026-05-29T15:54:24Z' - lastUpdateTime: '2026-07-22T10:14:35Z' - message: ReplicaSet "playwright-86c74d7c78" has successfully progressed. - reason: NewReplicaSetAvailable - status: 'True' - type: Progressing - - lastTransitionTime: '2026-08-28T06:04:14Z' - lastUpdateTime: '2026-08-28T06:04:14Z' - message: Deployment has minimum availability. - reason: MinimumReplicasAvailable - status: 'True' - type: Available + - lastTransitionTime: "2026-05-29T15:54:24Z" + lastUpdateTime: "2026-07-22T10:14:35Z" + message: ReplicaSet "playwright-86c74d7c78" has successfully progressed. + reason: NewReplicaSetAvailable + status: "True" + type: Progressing + - lastTransitionTime: "2026-08-28T06:04:14Z" + lastUpdateTime: "2026-08-28T06:04:14Z" + message: Deployment has minimum availability. + reason: MinimumReplicasAvailable + status: "True" + type: Available observedGeneration: 95 readyReplicas: 1 replicas: 1 @@ -94,12 +94,12 @@ metadata: spec: internalTrafficPolicy: Cluster ipFamilies: - - IPv4 + - IPv4 ipFamilyPolicy: SingleStack ports: - - port: 3000 - protocol: TCP - targetPort: 3000 + - port: 3000 + protocol: TCP + targetPort: 3000 selector: app: playwright sessionAffinity: None @@ -113,19 +113,18 @@ metadata: name: playwright namespace: default spec: - ingressClassName: nginx rules: - - host: playwright.haven - http: - paths: - - backend: - service: - name: playwright - port: - number: 3000 - path: / - pathType: Prefix + - host: playwright.haven + http: + paths: + - backend: + service: + name: playwright + port: + number: 3000 + path: / + pathType: Prefix status: loadBalancer: ingress: - - ip: 192.168.20.204 + - ip: 192.168.20.204 diff --git a/apps/default/searxng.yaml b/apps/default/searxng.yaml index 21a4b46..1e9c34e 100644 --- a/apps/default/searxng.yaml +++ b/apps/default/searxng.yaml @@ -80,7 +80,6 @@ metadata: name: searxng namespace: default spec: - ingressClassName: nginx rules: - host: search.haven http: @@ -91,4 +90,4 @@ spec: service: name: searxng port: - number: 8080 \ No newline at end of file + number: 8080 diff --git a/apps/default/stirlingpdf.yaml b/apps/default/stirlingpdf.yaml index 384a5f4..b7da989 100644 --- a/apps/default/stirlingpdf.yaml +++ b/apps/default/stirlingpdf.yaml @@ -99,7 +99,6 @@ metadata: labels: app: stirlingpdf spec: - ingressClassName: nginx rules: - host: stirling.haven http: diff --git a/apps/default/uptimekuma.yaml b/apps/default/uptimekuma.yaml index 0158634..2b68364 100644 --- a/apps/default/uptimekuma.yaml +++ b/apps/default/uptimekuma.yaml @@ -56,7 +56,7 @@ spec: persistentVolumeClaim: claimName: uptimekuma-config --- -# 2) Service +# 2) Service apiVersion: v1 kind: Service metadata: @@ -93,7 +93,6 @@ metadata: name: uptimekuma namespace: default spec: - ingressClassName: nginx rules: - host: uptimekuma.haven http: @@ -104,4 +103,4 @@ spec: service: name: uptimekuma port: - number: 3001 \ No newline at end of file + number: 3001 diff --git a/apps/default/vaultwarden.yaml b/apps/default/vaultwarden.yaml index 6cc5ace..f7162fc 100644 --- a/apps/default/vaultwarden.yaml +++ b/apps/default/vaultwarden.yaml @@ -110,7 +110,6 @@ metadata: cert-manager.io/cluster-issuer: internal-ca nginx.ingress.kubernetes.io/force-ssl-redirect: "true" spec: - ingressClassName: nginx tls: - hosts: - vault.haven @@ -134,7 +133,6 @@ metadata: name: vaultwarden-public namespace: default spec: - ingressClassName: nginx rules: - host: vault.ivanch.me http: diff --git a/apps/dns/adguard-sync.yaml b/apps/dns/adguard-sync.yaml index 01da142..fd9e792 100644 --- a/apps/dns/adguard-sync.yaml +++ b/apps/dns/adguard-sync.yaml @@ -31,58 +31,58 @@ spec: app: adguardsync spec: containers: - - name: adguardsync - image: ghcr.io/bakito/adguardhome-sync:latest - imagePullPolicy: Always - ports: - - containerPort: 8080 - protocol: TCP - name: web-port - env: - - name: CRON - value: "0 * * * *" - - name: RUN_ON_START - value: "true" - - name: LOG_LEVEL - value: "info" - - name: ORIGIN_URL - value: "http://adguard.haven" - - name: ORIGIN_USERNAME - valueFrom: - secretKeyRef: - name: adguardhome-password - key: username - - name: ORIGIN_PASSWORD - valueFrom: - secretKeyRef: - name: adguardhome-password - key: password - - name: REPLICA1_URL - value: "http://adguard2.haven" - - name: REPLICA1_USERNAME - valueFrom: - secretKeyRef: - name: adguardhome-password - key: username - - name: REPLICA1_PASSWORD - valueFrom: - secretKeyRef: - name: adguardhome-password - key: password - resources: - requests: - cpu: 100m - memory: 128Mi - limits: - cpu: 500m - memory: 512Mi - volumeMounts: - - name: adguardsync-storage - mountPath: /config + - name: adguardsync + image: ghcr.io/bakito/adguardhome-sync:latest + imagePullPolicy: Always + ports: + - containerPort: 8080 + protocol: TCP + name: web-port + env: + - name: CRON + value: "0 * * * *" + - name: RUN_ON_START + value: "true" + - name: LOG_LEVEL + value: "info" + - name: ORIGIN_URL + value: "http://adguard.haven" + - name: ORIGIN_USERNAME + valueFrom: + secretKeyRef: + name: adguardhome-password + key: username + - name: ORIGIN_PASSWORD + valueFrom: + secretKeyRef: + name: adguardhome-password + key: password + - name: REPLICA1_URL + value: "http://adguard2.haven" + - name: REPLICA1_USERNAME + valueFrom: + secretKeyRef: + name: adguardhome-password + key: username + - name: REPLICA1_PASSWORD + valueFrom: + secretKeyRef: + name: adguardhome-password + key: password + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 500m + memory: 512Mi + volumeMounts: + - name: adguardsync-storage + mountPath: /config volumes: - - name: adguardsync-storage - persistentVolumeClaim: - claimName: adguardsync-pvc + - name: adguardsync-storage + persistentVolumeClaim: + claimName: adguardsync-pvc --- apiVersion: v1 kind: Service @@ -94,9 +94,9 @@ spec: selector: app: adguardsync ports: - - name: web - port: 8080 - targetPort: 8080 + - name: web + port: 8080 + targetPort: 8080 --- apiVersion: networking.k8s.io/v1 kind: Ingress @@ -104,15 +104,14 @@ metadata: name: adguardsync-ingress namespace: dns spec: - ingressClassName: nginx rules: - - host: adguardsync.haven - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: adguardsync-svc - port: - number: 8080 + - host: adguardsync.haven + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: adguardsync-svc + port: + number: 8080 diff --git a/apps/dns/adguard.yaml b/apps/dns/adguard.yaml index cf1607e..e9f4aa0 100644 --- a/apps/dns/adguard.yaml +++ b/apps/dns/adguard.yaml @@ -31,48 +31,48 @@ spec: app: adguardhome spec: containers: - - name: adguardhome - image: adguard/adguardhome:latest - imagePullPolicy: Always - ports: - - containerPort: 53 - protocol: TCP - - containerPort: 53 - protocol: UDP - - containerPort: 3000 - protocol: TCP - name: install-port - - containerPort: 80 - protocol: TCP - name: web-port - resources: - requests: - cpu: 100m - memory: 128Mi - limits: - cpu: 1000m - memory: 2Gi - livenessProbe: - httpGet: - path: / - port: 80 - initialDelaySeconds: 30 - periodSeconds: 10 - readinessProbe: - httpGet: - path: / - port: 80 - initialDelaySeconds: 5 - periodSeconds: 5 - volumeMounts: - - name: adguardhome-storage - mountPath: /opt/adguardhome/work - - name: adguardhome-storage - mountPath: /opt/adguardhome/conf + - name: adguardhome + image: adguard/adguardhome:latest + imagePullPolicy: Always + ports: + - containerPort: 53 + protocol: TCP + - containerPort: 53 + protocol: UDP + - containerPort: 3000 + protocol: TCP + name: install-port + - containerPort: 80 + protocol: TCP + name: web-port + resources: + requests: + cpu: 100m + memory: 128Mi + limits: + cpu: 1000m + memory: 2Gi + livenessProbe: + httpGet: + path: / + port: 80 + initialDelaySeconds: 30 + periodSeconds: 10 + readinessProbe: + httpGet: + path: / + port: 80 + initialDelaySeconds: 5 + periodSeconds: 5 + volumeMounts: + - name: adguardhome-storage + mountPath: /opt/adguardhome/work + - name: adguardhome-storage + mountPath: /opt/adguardhome/conf volumes: - - name: adguardhome-storage - persistentVolumeClaim: - claimName: adguardhome-pvc + - name: adguardhome-storage + persistentVolumeClaim: + claimName: adguardhome-pvc --- apiVersion: v1 kind: Service @@ -85,17 +85,17 @@ spec: app: adguardhome loadBalancerIP: 192.168.20.200 ports: - - name: dns-tcp - port: 53 - targetPort: 53 - protocol: TCP - - name: dns-udp - port: 53 - targetPort: 53 - protocol: UDP - - name: web - port: 80 - targetPort: 80 + - name: dns-tcp + port: 53 + targetPort: 53 + protocol: TCP + - name: dns-udp + port: 53 + targetPort: 53 + protocol: UDP + - name: web + port: 80 + targetPort: 80 --- apiVersion: v1 kind: Service @@ -108,17 +108,17 @@ spec: app: adguardhome loadBalancerIP: 192.168.15.200 ports: - - name: dns-tcp - port: 53 - targetPort: 53 - protocol: TCP - - name: dns-udp - port: 53 - targetPort: 53 - protocol: UDP - - name: web - port: 80 - targetPort: 80 + - name: dns-tcp + port: 53 + targetPort: 53 + protocol: TCP + - name: dns-udp + port: 53 + targetPort: 53 + protocol: UDP + - name: web + port: 80 + targetPort: 80 --- apiVersion: v1 kind: Service @@ -130,9 +130,9 @@ spec: selector: app: adguardhome ports: - - name: install - port: 3000 - targetPort: 3000 + - name: install + port: 3000 + targetPort: 3000 --- apiVersion: networking.k8s.io/v1 kind: Ingress @@ -140,18 +140,17 @@ metadata: name: adguardhome-ingress namespace: dns spec: - ingressClassName: nginx rules: - - host: adguard.haven - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: adguardhome-svc - port: - number: 80 + - host: adguard.haven + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: adguardhome-svc + port: + number: 80 --- apiVersion: networking.k8s.io/v1 kind: Ingress @@ -159,15 +158,14 @@ metadata: name: adguardhome-install-ingress namespace: dns spec: - ingressClassName: nginx rules: - - host: install.adguard.haven - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: adguard-install-svc - port: - number: 3000 + - host: install.adguard.haven + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: adguard-install-svc + port: + number: 3000 diff --git a/apps/infra/beszel.yaml b/apps/infra/beszel.yaml index 6df5a0f..19741d8 100644 --- a/apps/infra/beszel.yaml +++ b/apps/infra/beszel.yaml @@ -83,7 +83,6 @@ metadata: name: beszel namespace: infra spec: - ingressClassName: nginx rules: - host: beszel.haven http: diff --git a/apps/infra/code-config.yaml b/apps/infra/code-config.yaml index 9627d92..953cc61 100644 --- a/apps/infra/code-config.yaml +++ b/apps/infra/code-config.yaml @@ -99,7 +99,6 @@ metadata: name: code-config namespace: infra spec: - ingressClassName: nginx rules: - host: code-config.haven http: diff --git a/apps/infra/file-nginx.yaml b/apps/infra/file-nginx.yaml index bb9cd10..c5b5121 100644 --- a/apps/infra/file-nginx.yaml +++ b/apps/infra/file-nginx.yaml @@ -115,7 +115,6 @@ metadata: nginx.ingress.kubernetes.io/enable-cors: "true" nginx.ingress.kubernetes.io/cors-allow-origin: "*" spec: - ingressClassName: nginx rules: - host: file-nginx.haven http: diff --git a/apps/infra/haven-notify.yaml b/apps/infra/haven-notify.yaml index ab4a11e..817f0b9 100644 --- a/apps/infra/haven-notify.yaml +++ b/apps/infra/haven-notify.yaml @@ -72,7 +72,6 @@ metadata: name: haven-notify namespace: infra spec: - ingressClassName: nginx rules: - host: notify.haven http: diff --git a/apps/infra/wg-easy.yaml b/apps/infra/wg-easy.yaml index 628c3fb..53bdbc4 100644 --- a/apps/infra/wg-easy.yaml +++ b/apps/infra/wg-easy.yaml @@ -113,7 +113,6 @@ metadata: name: wg-easy-ingress namespace: infra spec: - ingressClassName: nginx rules: - host: vpn.haven http: diff --git a/apps/monitoring/grafana.yaml b/apps/monitoring/grafana.yaml index 52e24cf..ea40eb6 100644 --- a/apps/monitoring/grafana.yaml +++ b/apps/monitoring/grafana.yaml @@ -94,7 +94,6 @@ metadata: namespace: monitoring name: grafana spec: - ingressClassName: nginx rules: - host: grafana.haven http: @@ -113,7 +112,6 @@ metadata: namespace: monitoring name: grafana-public spec: - ingressClassName: nginx rules: - host: grafanah.ivanch.me http: diff --git a/bootstrap/argocd-install/ingress.yaml b/bootstrap/argocd-install/ingress.yaml index 013f391..4d989e0 100644 --- a/bootstrap/argocd-install/ingress.yaml +++ b/bootstrap/argocd-install/ingress.yaml @@ -4,7 +4,6 @@ metadata: name: argocd-server namespace: argocd spec: - ingressClassName: nginx rules: - host: argocd.haven http: