Add znc and thelounge

This commit is contained in:
SeanOMik 2023-04-13 13:12:47 -04:00
parent 6a5740f138
commit 2c6e91b32d
Signed by: SeanOMik
GPG Key ID: 568F326C7EB33ACB
9 changed files with 165 additions and 2 deletions

View File

@ -0,0 +1,7 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./namespace.yaml
- ./network_policy.yaml
- ./znc
- ./thelounge

View File

@ -0,0 +1,6 @@
apiVersion: v1
kind: Namespace
metadata:
name: irc
labels:
name: irc

View File

@ -0,0 +1,25 @@
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-most-allow-some
namespace: irc
spec:
# Apply to all pods in this namespace
podSelector: {}
ingress:
- from:
# Allow all pods in this namespace
- namespaceSelector:
matchLabels:
name: "irc"
# - podSelector: {}
# Allow traefik pods
- namespaceSelector:
matchLabels:
name: "traefik"
# Allow all pods with this label
- podSelector:
matchLabels:
needsIRC: "yes"

View File

@ -0,0 +1,60 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: thelounge
namespace: irc
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: lscr.io/linuxserver/thelounge
tag: latest
env:
TZ: America/New_York
PGID: "1000"
PUID: "1000"
service:
main:
ports:
http:
port: 9000
probes:
liveness:
enabled: false
ingress:
main:
enabled: true
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
hosts:
- host: &host "lounge.${SECRET_NEW_DOMAIN}"
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- *host
secretName: wildcard-main-tls
persistence:
config:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/thelounge
mountPath: /config
resources:
requests:
cpu: 1m
memory: 40Mi
limits:
memory: 300Mi

View File

@ -0,0 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./helm-release.yaml

View File

@ -0,0 +1,56 @@
apiVersion: helm.toolkit.fluxcd.io/v2beta1
kind: HelmRelease
metadata:
name: znc
namespace: irc
spec:
interval: 5m
chart:
spec:
chart: app-template
version: 1.3.x
sourceRef:
kind: HelmRepository
name: bjws-charts
namespace: flux-system
values:
image:
repository: znc
tag: latest
service:
main:
ports:
http:
port: 6501
probes:
liveness:
enabled: false
ingress:
main:
enabled: true
annotations:
traefik.ingress.kubernetes.io/router.entrypoints: websecure
traefik.ingress.kubernetes.io/router.middlewares: traefik-authentik@kubernetescrd
hosts:
- host: &host "znc.${SECRET_NEW_DOMAIN}"
paths:
- path: /
pathType: Prefix
tls:
- hosts:
- *host
secretName: wildcard-main-tls
persistence:
config:
enabled: true
type: hostPath
hostPath: /mnt/MainPool/Kubernetes/znc
mountPath: /config
resources:
requests:
cpu: 1m
memory: 4Mi
limits:
memory: 100Mi

View File

@ -0,0 +1,4 @@
apiVersion: kustomize.config.k8s.io/v1beta1
kind: Kustomization
resources:
- ./helm-release.yaml

View File

@ -6,4 +6,5 @@ resources:
- ./media - ./media
- ./download - ./download
- ./management - ./management
- ./tools - ./tools
- ./irc

View File

@ -13,7 +13,7 @@ TODO:
- [ ] Grafana - [ ] Grafana
- [ ] Grafana Loki - [ ] Grafana Loki
- [ ] uptime-kuma - [ ] uptime-kuma
- [ ] IRC - [x] IRC
- [ ] Harbor - [ ] Harbor
- [ ] CDN (nginx filelist) - [ ] CDN (nginx filelist)
- [ ] Budget (firefly-iii) - [ ] Budget (firefly-iii)