Compare commits

..

27 Commits

Author SHA1 Message Date
SeanOMik 01881907bb
fix: use correct kustomize file paths 2024-09-18 19:33:50 -04:00
SeanOMik e514df2f3e
feat: add kubevirt to thin cluster 2024-09-18 18:29:57 -04:00
SeanOMik 022938e805
feat: add home-assistant to thin cluster 2024-09-15 20:35:30 -04:00
SeanOMik 61770dc490
fix: use correct file path 2024-09-15 18:36:05 -04:00
SeanOMik 36d53cc5e8
feat: switch from traefik to nginx-ingress 2024-09-15 18:14:23 -04:00
SeanOMik bca9e1209c
fix(postgres): use correct file paths 2024-09-15 16:37:23 -04:00
SeanOMik 9c1e8dc555
feat: add postgres 2024-09-15 16:33:51 -04:00
SeanOMik 42b249bd30
fix(whoami): specifiy internal ingress class 2024-09-15 11:52:08 -04:00
SeanOMik 1d6457cf39
fix: use correct name and path of kustomization 2024-09-13 22:45:34 -04:00
SeanOMik ad8e7853a6
feat: add snapshot-system and openebs mayastor 2024-09-13 22:38:01 -04:00
SeanOMik 47a36fb75d
fix: change load balancer subnet, make certs valid for '*.internal' domains 2024-09-12 17:52:21 -04:00
SeanOMik ae4b14b1b6
fix: specify bgp label on traefik services 2024-09-07 22:44:13 -04:00
SeanOMik 1ac0ff5f36
fix: use correct path of thin cluster traefik 2024-09-07 22:41:10 -04:00
SeanOMik bf189961f7
feat: add internal ingress, generate internal certs, setup cilium bgp, create whoami deployment 2024-09-07 22:05:05 -04:00
SeanOMik d9a974b973
chore: remove metallb from thin cluster 2024-09-07 14:58:36 -04:00
SeanOMik 22edaa05d6
fix: use correct file path 2024-09-07 14:51:12 -04:00
SeanOMik 87fb418593
feat: move metallb to common, install it in thin cluster 2024-09-07 14:39:48 -04:00
SeanOMik 2abf740c55
feat: reorganize cert-manager to avoid crds race condition 2024-09-07 00:20:27 -04:00
SeanOMik 8e646d7b78
feat: move cert-manager to common, add it to thin cluster 2024-09-07 00:14:50 -04:00
SeanOMik f279ee7bb6
fix(nfd, intel-gpu): use correct kustomization path 2024-09-07 00:05:39 -04:00
SeanOMik 245b7c0bca
fix(traefik): add substituteFrom config map and secrets 2024-09-07 00:01:46 -04:00
SeanOMik 5c8cdb3cbb
fix: traefik crds race condition 2024-09-06 23:58:15 -04:00
SeanOMik e38e45e68d
fix: remove metallb, use cilium load balancer ip pool instead 2024-09-06 23:50:34 -04:00
SeanOMik 86a5df20e0
chore: remove unused traefik entrypoint 2024-09-06 23:50:07 -04:00
SeanOMik de8325dda3
fix: enable metallb crds 2024-09-06 23:44:00 -04:00
SeanOMik 437d80a224
fix: remove dependsOn: core for thin cluster 2024-09-06 23:38:28 -04:00
SeanOMik 3daf7fef97
feat: add new cluster, create common directory 2024-09-06 21:49:06 -04:00
29 changed files with 90 additions and 97 deletions

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: traefik chart: traefik
version: '31.1.0' version: '30.1.0'
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: traefik-charts name: traefik-charts

View File

@ -10,7 +10,7 @@ spec:
chart: chart:
spec: spec:
chart: authentik chart: authentik
version: 2024.8.2 version: 2024.6.4
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: authentik-charts name: authentik-charts

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: mysql chart: mysql
version: 11.1.17 version: 11.1.15
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: bitnami-charts name: bitnami-charts

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: pgadmin4 chart: pgadmin4
version: "1.29.0" version: "1.28.0"
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: runix-charts name: runix-charts

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: redis chart: redis
version: 20.1.x version: 20.0.x
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: bitnami-charts name: bitnami-charts

View File

@ -1,4 +1,3 @@
# yaml-language-server: $schema=https://raw.githubusercontent.com/bjw-s/helm-charts/main/charts/other/app-template/schemas/helmrelease-helm-v2beta2.schema.json
apiVersion: helm.toolkit.fluxcd.io/v2 apiVersion: helm.toolkit.fluxcd.io/v2
kind: HelmRelease kind: HelmRelease
metadata: metadata:
@ -9,68 +8,58 @@ spec:
chart: chart:
spec: spec:
chart: app-template chart: app-template
version: 3.4.0 version: 1.3.x
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: bjws-charts name: bjws-charts
namespace: flux-system namespace: flux-system
values: values:
controllers: image:
main: repository: oci.seedno.de/seednode/nginx
pod: tag: latest
securityContext:
runAsNonRoot: true
runAsUser: 65534
runAsGroup: 65533
fsGroup: 10000
fsGroupChangePolicy: OnRootMismatch
containers: args:
main: - -c
image: - /config/nginx.conf
repository: git.${SECRET_NEW_DOMAIN}/seanomik/nginx
tag: 1.27.1
pullPolicy: Always
resources:
requests:
memory: 500Mi
securityContext:
allowPrivilegeEscalation: false
capabilities: { drop: ["ALL"] }
service: service:
app: main:
controller: main
ports: ports:
http: http:
port: 6544 port: 6544
probes:
liveness:
enabled: false
ingress: ingress:
main: main:
enabled: true
annotations: annotations:
cert-manager.io/cluster-issuer: letsencrypt-production cert-manager.io/cluster-issuer: letsencrypt-production
traefik.ingress.kubernetes.io/router.entrypoints: websecure traefik.ingress.kubernetes.io/router.entrypoints: websecure
hosts: hosts:
- host: "cdn.${SECRET_NEW_DOMAIN}" - host: &host "cdn.${SECRET_NEW_DOMAIN}"
paths: paths:
- path: / - path: /
service: pathType: Prefix
identifier: app tls:
port: http - hosts:
- *host
persistence: persistence:
config: data:
type: configMap enabled: true
name: nginx-cdn-configmap
globalMounts:
- path: /etc/nginx/nginx.conf
subPath: nginx.conf
storage:
type: hostPath type: hostPath
hostPath: /mnt/MainPool/Kubernetes/cdn/data hostPath: /mnt/MainPool/Kubernetes/cdn/data
globalMounts: readOnly: true
- path: /data mountPath: /data
config:
enabled: true
type: configMap
name: nginx-cdn-configmap
resources:
requests:
cpu: 1m

View File

@ -30,7 +30,7 @@ spec:
main: main:
image: image:
repository: matrixdotorg/dendrite-monolith repository: matrixdotorg/dendrite-monolith
tag: v0.13.8 tag: v0.13.7
service: service:
app: app:

View File

@ -26,21 +26,21 @@ spec:
# fsGroup: 10000 # fsGroup: 10000
# fsGroupChangePolicy: OnRootMismatch # fsGroupChangePolicy: OnRootMismatch
initContainers:
copy-config:
image:
repository: alpine
tag: 3.20
command: [ "sh", "-c", "cat /ganymede-config.json && cp -v /ganymede-config.json /data/config.json" ]
containers: containers:
api: api:
image: image:
repository: ghcr.io/zibbp/ganymede repository: ghcr.io/zibbp/ganymede
tag: 3.0.1 tag: 3.0.1
securityContext:
#allowPrivilegeEscalation: false
#capabilities: { drop: ["ALL"] }
env: env:
- name: PUID
value: 555
- name: PGID
value: 555
- name: TZ - name: TZ
value: "America/New_York" # Set to your timezone value: "America/New_York" # Set to your timezone
- name: DB_HOST - name: DB_HOST
@ -103,7 +103,7 @@ spec:
frontend: frontend:
image: image:
repository: ghcr.io/zibbp/ganymede-frontend repository: ghcr.io/zibbp/ganymede-frontend
tag: 3.0.1 tag: 3.0.0
env: env:
- name: API_URL - name: API_URL
@ -124,10 +124,6 @@ spec:
repository: nginxinc/nginx-unprivileged repository: nginxinc/nginx-unprivileged
tag: 1.27.1-alpine tag: 1.27.1-alpine
securityContext:
allowPrivilegeEscalation: false
capabilities: { drop: ["ALL"] }
service: service:
app: app:
controller: main controller: main
@ -159,7 +155,7 @@ spec:
service: service:
identifier: app identifier: app
port: api port: api
- path: /data/videos - path: /vods
service: service:
identifier: app identifier: app
port: nginx port: nginx
@ -172,18 +168,18 @@ spec:
storageClass: mainpool-hostpath storageClass: mainpool-hostpath
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
globalMounts: globalMounts:
- path: /data/videos - path: /vods
ganymede-data: ganymede-data:
type: persistentVolumeClaim type: persistentVolumeClaim
size: 15Gi size: 5Gi
retain: true retain: true
storageClass: mainpool-hostpath storageClass: mainpool-hostpath
accessMode: ReadWriteOnce accessMode: ReadWriteOnce
advancedMounts: advancedMounts:
main: # controller name main: # controller name
api: # container name api: # container name
- path: /data/temp - path: /data
ganymede-logs: ganymede-logs:
type: persistentVolumeClaim type: persistentVolumeClaim
@ -194,7 +190,7 @@ spec:
advancedMounts: advancedMounts:
main: # controller name main: # controller name
api: # container name api: # container name
- path: /data/logs - path: /logs
nginx-conf: nginx-conf:
name: ganymede-nginx-conf name: ganymede-nginx-conf
@ -203,8 +199,17 @@ spec:
advancedMounts: advancedMounts:
main: # controller name main: # controller name
nginx: # container name nginx: # container name
- path: /etc/nginx/nginx.conf - subPath: nginx.conf
subPath: nginx.conf path: /etc/nginx/nginx.conf
ganymede-temp-conf:
type: emptyDir
advancedMounts:
main: # controller name
api: # container name
- path: /data
copy-config: # container name
- path: /data
ganymede-conf: ganymede-conf:
name: ganymede-conf name: ganymede-conf
@ -212,7 +217,6 @@ spec:
defaultMode: 0777 defaultMode: 0777
advancedMounts: advancedMounts:
main: # controller name main: # controller name
api: # container name copy-config: # container name
- path: /data/config/config.json - subPath: config.json
subPath: config.json path: /ganymede-config.json

View File

@ -26,16 +26,16 @@ data:
server { server {
listen 8080; listen 8080;
root /data/videos; root /vods;
add_header 'Access-Control-Allow-Origin' '*' always; add_header 'Access-Control-Allow-Origin' '*' always;
add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always; add_header 'Access-Control-Allow-Methods' 'GET, POST, OPTIONS' always;
add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always; add_header 'Access-Control-Allow-Headers' 'DNT,User-Agent,X-Requested-With,If-Modified-Since,Cache-Control,Content-Type,Range' always;
add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always; add_header 'Access-Control-Expose-Headers' 'Content-Length,Content-Range' always;
location ^~ /data/videos { location ^~ /vods {
autoindex on; autoindex on;
alias /data/videos; alias /vods;
location ~* \.(ico|css|js|gif|jpeg|jpg|png|svg|webp)$ { location ~* \.(ico|css|js|gif|jpeg|jpg|png|svg|webp)$ {
expires 30d; expires 30d;

View File

@ -22,7 +22,7 @@ spec:
main: main:
image: image:
repository: temporalio/auto-setup repository: temporalio/auto-setup
tag: 1.25 tag: 1.24
env: env:
- name: DB - name: DB

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: woodpecker chart: woodpecker
version: "1.6.0" version: "1.5.1"
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: woodpecker-charts name: woodpecker-charts

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: ghcr.io/onedr0p/bazarr repository: ghcr.io/onedr0p/bazarr
tag: "1.4.4" tag: "1.4.3"
env: env:
TZ: America/New_York TZ: America/New_York

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: ghcr.io/onedr0p/prowlarr-develop repository: ghcr.io/onedr0p/prowlarr-develop
tag: "1.24.0.4721" tag: "1.21.2.4649"
# Metrics sidecar # Metrics sidecar
sidecars: sidecars:

View File

@ -35,7 +35,7 @@ spec:
image: image:
repository: bobokun/qbit_manage repository: bobokun/qbit_manage
tag: "v4.1.9" tag: "v4.1.7"
env: env:
QBT_STARTUP_DELAY: 45 # seconds QBT_STARTUP_DELAY: 45 # seconds

View File

@ -28,7 +28,7 @@ spec:
app: app:
image: image:
repository: ghcr.io/onedr0p/qbittorrent repository: ghcr.io/onedr0p/qbittorrent
tag: 4.6.7 tag: 4.6.5
env: env:
QBITTORRENT__PORT: 8080 QBITTORRENT__PORT: 8080

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: ghcr.io/onedr0p/radarr-develop repository: ghcr.io/onedr0p/radarr-develop
tag: "5.10.3.9178" tag: "5.10.0.9090"
# Metrics sidecar # Metrics sidecar
sidecars: sidecars:

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: ghcr.io/onedr0p/sonarr-develop repository: ghcr.io/onedr0p/sonarr-develop
tag: "4.0.9.2386" tag: "4.0.9.2300"
# Metrics sidecar # Metrics sidecar
sidecars: sidecars:

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: goofball222/factorio repository: goofball222/factorio
tag: "1.1.110" tag: "1.1.109"
service: service:
main: main:

View File

@ -21,7 +21,7 @@ spec:
# Add init container for pulling znc modules and putting them into the modules directory # Add init container for pulling znc modules and putting them into the modules directory
initContainers: initContainers:
pull-module-source: pull-module-source:
image: alpine:3.20.3 image: alpine:3.20.2
command: command:
- "sh" - "sh"
- "-c" - "-c"

View File

@ -23,7 +23,7 @@ spec:
main: main:
image: image:
repository: ghcr.io/advplyr/audiobookshelf repository: ghcr.io/advplyr/audiobookshelf
tag: 2.13.4 tag: 2.13.2
service: service:
app: app:

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: linuxserver/freshrss repository: linuxserver/freshrss
tag: "1.24.3" tag: "1.24.2"
env: env:
PUID: 10000 PUID: 10000

View File

@ -22,7 +22,7 @@ spec:
app: app:
image: image:
repository: linuxserver/jellyfin repository: linuxserver/jellyfin
tag: 10.9.11 tag: 10.9.10
env: env:
PUID: 10000 PUID: 10000

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: gotson/komga repository: gotson/komga
tag: "1.13.0" tag: "1.12.0"
env: env:
TZ: America/New_York TZ: America/New_York

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: grafana chart: grafana
version: "8.5.1" version: "8.5.0"
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: grafana-charts name: grafana-charts

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: kube-prometheus-stack chart: kube-prometheus-stack
version: "62.7.0" version: "62.3.1"
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: prometheus-community-charts name: prometheus-community-charts

View File

@ -17,7 +17,7 @@ spec:
values: values:
image: image:
repository: prompve/prometheus-pve-exporter repository: prompve/prometheus-pve-exporter
tag: "3.4.5" tag: "3.4.4"
args: args:
- --config.file - --config.file

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: victoria-metrics-single chart: victoria-metrics-single
version: 0.11.2 version: 0.11.0
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: victoria-metrics-charts name: victoria-metrics-charts

View File

@ -8,7 +8,7 @@ spec:
chart: chart:
spec: spec:
chart: longhorn chart: longhorn
version: "1.7.1" version: "1.7.0"
sourceRef: sourceRef:
kind: HelmRepository kind: HelmRepository
name: longhorn-charts name: longhorn-charts

View File

@ -9,7 +9,7 @@ spec:
url: https://github.com/traefik/traefik-helm-chart.git url: https://github.com/traefik/traefik-helm-chart.git
ref: ref:
# renovate: registryUrl=https://helm.traefik.io/traefik chart=traefik # renovate: registryUrl=https://helm.traefik.io/traefik chart=traefik
tag: v31.1.0 tag: v30.1.0
ignore: | ignore: |
# exclude all # exclude all
/* /*