Initial Commit
This commit is contained in:
24
.gitignore
vendored
Normal file
24
.gitignore
vendored
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
#K3s Secrets
|
||||||
|
bootstrap/token
|
||||||
|
bootstrap/get_helm.sh
|
||||||
|
charts/
|
||||||
|
*.kubeconfig
|
||||||
|
kubeconfig
|
||||||
|
k3s.yaml
|
||||||
|
|
||||||
|
#Cloudflare variables
|
||||||
|
*.json
|
||||||
|
!**/kustomization.json
|
||||||
|
.cloudflared/
|
||||||
|
|
||||||
|
|
||||||
|
#TLS Certs
|
||||||
|
*.crt
|
||||||
|
*.key
|
||||||
|
*.pem
|
||||||
|
|
||||||
|
#Secret Manifests
|
||||||
|
**/secret.yaml
|
||||||
|
**/secrets.yaml
|
||||||
|
*-secret.yaml
|
||||||
|
|
||||||
9
apps/argocd/apps/gitea.yaml
Normal file
9
apps/argocd/apps/gitea.yaml
Normal file
@@ -0,0 +1,9 @@
|
|||||||
|
apiVersion: argoproj.io/v1alpha1
|
||||||
|
kind: Application
|
||||||
|
metadata:
|
||||||
|
name: gitea
|
||||||
|
namespace: argocd
|
||||||
|
spec:
|
||||||
|
project: default
|
||||||
|
source:
|
||||||
|
|
||||||
20
apps/argocd/ingress.yaml
Normal file
20
apps/argocd/ingress.yaml
Normal file
@@ -0,0 +1,20 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: argocd
|
||||||
|
namespace: argocd
|
||||||
|
annotations:
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
spec:
|
||||||
|
ingressClassName: traefik
|
||||||
|
rules:
|
||||||
|
- host: argo.panopticons.org
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: argocd-server
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
21
apps/cloudflared/configmap.yaml
Normal file
21
apps/cloudflared/configmap.yaml
Normal file
@@ -0,0 +1,21 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: ConfigMap
|
||||||
|
metadata:
|
||||||
|
name: cloudflared-config
|
||||||
|
namespace: cloudflared
|
||||||
|
data:
|
||||||
|
config.yaml: |
|
||||||
|
tunnel: 63418c8c-38c2-45db-968b-7f3fab3c75a6
|
||||||
|
credentials-file: /etc/cloudflared/creds/credentials.json
|
||||||
|
|
||||||
|
|
||||||
|
ingress:
|
||||||
|
- hostname: jellyfin.panopticons.org
|
||||||
|
service: http://10.0.20.52:8096
|
||||||
|
- hostname: plex.panopticons.org
|
||||||
|
service: http://10.0.20.53:32400
|
||||||
|
- hostname: "*.panopticons.org"
|
||||||
|
service: https://traefik.kube-system.svc.cluster.local:443
|
||||||
|
originRequest:
|
||||||
|
noTLSVerify: true
|
||||||
|
- service: http_status:404
|
||||||
67
apps/cloudflared/deployment.yaml
Normal file
67
apps/cloudflared/deployment.yaml
Normal file
@@ -0,0 +1,67 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: cloudflared
|
||||||
|
namespace: cloudflared
|
||||||
|
spec:
|
||||||
|
replicas: 2
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: cloudflared
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: cloudflared
|
||||||
|
spec:
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 65532
|
||||||
|
runAsGroup: 65532
|
||||||
|
fsGroup: 65532
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
containers:
|
||||||
|
- name: cloudflared
|
||||||
|
image: cloudflare/cloudflared:2025.4.0
|
||||||
|
args:
|
||||||
|
- tunnel
|
||||||
|
- --config
|
||||||
|
- /etc/cloudflared/config.yaml
|
||||||
|
- --metrics
|
||||||
|
- 0.0.0.0:2000
|
||||||
|
- --protocol
|
||||||
|
- http2
|
||||||
|
- --no-autoupdate
|
||||||
|
- run
|
||||||
|
volumeMounts:
|
||||||
|
- name: config
|
||||||
|
mountPath: /etc/cloudflared/config.yaml
|
||||||
|
subPath: config.yaml
|
||||||
|
- name: creds
|
||||||
|
mountPath: /etc/cloudflared/creds
|
||||||
|
readOnly: true
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
memory: "256Mi"
|
||||||
|
cpu: "100m"
|
||||||
|
limits:
|
||||||
|
memory: "512Mi"
|
||||||
|
cpu: "500m"
|
||||||
|
livenessProbe:
|
||||||
|
httpGet:
|
||||||
|
path: /ready
|
||||||
|
port: 2000
|
||||||
|
initialDelaySeconds: 10
|
||||||
|
periodSeconds: 10
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: False
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
volumes:
|
||||||
|
- name: config
|
||||||
|
configMap:
|
||||||
|
name: cloudflared-config
|
||||||
|
- name: creds
|
||||||
|
secret:
|
||||||
|
secretName: tunnel-credentials
|
||||||
38
apps/gitea/deployment.yaml
Normal file
38
apps/gitea/deployment.yaml
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: gitea
|
||||||
|
namespace: gitea
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: gitea
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: gitea
|
||||||
|
spec:
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
containers:
|
||||||
|
- name: gitea
|
||||||
|
image: gitea/gitea:latest-rootless
|
||||||
|
ports:
|
||||||
|
- containerPort: 3000
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /data
|
||||||
|
name: gitea-data
|
||||||
|
volumes:
|
||||||
|
- name: gitea-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: gitea-pvc
|
||||||
|
|
||||||
24
apps/gitea/ingress.yaml
Normal file
24
apps/gitea/ingress.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: gitea
|
||||||
|
namespace: gitea
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-cloudflare
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- git.panopticons.org
|
||||||
|
secretName: wildcard-panopticon-org-tls
|
||||||
|
rules:
|
||||||
|
- host: git.panopticons.org
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: gitea
|
||||||
|
port:
|
||||||
|
number: 3000
|
||||||
12
apps/gitea/pvc.yaml
Normal file
12
apps/gitea/pvc.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: gitea-pvc
|
||||||
|
namespace: gitea
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
|
||||||
12
apps/gitea/service.yaml
Normal file
12
apps/gitea/service.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: gitea
|
||||||
|
namespace: gitea
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 3000
|
||||||
|
targetPort: 3000
|
||||||
|
selector:
|
||||||
|
app: gitea
|
||||||
|
|
||||||
42
apps/homepage/deployment.yaml
Normal file
42
apps/homepage/deployment.yaml
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: homepage
|
||||||
|
namespace: homepage
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: homepage
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: homepage
|
||||||
|
spec:
|
||||||
|
securityContext:
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
containers:
|
||||||
|
- name: homepage
|
||||||
|
image: linuxserver/heimdall:latest
|
||||||
|
|
||||||
|
env:
|
||||||
|
- name: PUID
|
||||||
|
value: "1000"
|
||||||
|
- name: PGID
|
||||||
|
value: "1000"
|
||||||
|
- name: TZ
|
||||||
|
value: "America/Los_Angeles"
|
||||||
|
|
||||||
|
ports:
|
||||||
|
- containerPort: 80
|
||||||
|
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /config
|
||||||
|
name: homepage-data
|
||||||
|
|
||||||
|
volumes:
|
||||||
|
- name: homepage-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: homepage-pvc
|
||||||
|
|
||||||
24
apps/homepage/ingress.yaml
Normal file
24
apps/homepage/ingress.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: homepage
|
||||||
|
namespace: homepage
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-cloudflare
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- home.panopticons.org
|
||||||
|
secretName: wildcard-panopticon-org-tls
|
||||||
|
rules:
|
||||||
|
- host: home.panopticons.org
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: homepage
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
12
apps/homepage/pvc.yaml
Normal file
12
apps/homepage/pvc.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: homepage-pvc
|
||||||
|
namespace: homepage
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 2Gi
|
||||||
|
|
||||||
12
apps/homepage/service.yaml
Normal file
12
apps/homepage/service.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: homepage
|
||||||
|
namespace: homepage
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 80
|
||||||
|
selector:
|
||||||
|
app: homepage
|
||||||
|
|
||||||
28
apps/jellyseerr/deployment.yaml
Normal file
28
apps/jellyseerr/deployment.yaml
Normal file
@@ -0,0 +1,28 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: jellyseerr
|
||||||
|
namespace: jellyseerr
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: jellyseerr
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: jellyseerr
|
||||||
|
spec:
|
||||||
|
containers:
|
||||||
|
- name: jellyseerr
|
||||||
|
image: fallenbagel/jellyseerr:latest
|
||||||
|
ports:
|
||||||
|
- containerPort: 5055
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /app/config
|
||||||
|
name: jellyseerr-data
|
||||||
|
volumes:
|
||||||
|
- name: jellyseerr-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: jellyseerr-pvc
|
||||||
|
|
||||||
24
apps/jellyseerr/ingress.yaml
Normal file
24
apps/jellyseerr/ingress.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: jellyseerr
|
||||||
|
namespace: jellyseerr
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-cloudflare
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- requests.panopticons.org
|
||||||
|
secretName: wildcard-panopticon-org-tls
|
||||||
|
rules:
|
||||||
|
- host: requests.panopticons.org
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: jellyseerr
|
||||||
|
port:
|
||||||
|
number: 80
|
||||||
12
apps/jellyseerr/pvc.yaml
Normal file
12
apps/jellyseerr/pvc.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: jellyseerr-pvc
|
||||||
|
namespace: jellyseerr
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 5Gi
|
||||||
|
|
||||||
12
apps/jellyseerr/service.yaml
Normal file
12
apps/jellyseerr/service.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: jellyseerr
|
||||||
|
namespace: jellyseerr
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 80
|
||||||
|
targetPort: 5055
|
||||||
|
selector:
|
||||||
|
app: jellyseerr
|
||||||
|
|
||||||
38
apps/uptime-kuma/deployment.yaml
Normal file
38
apps/uptime-kuma/deployment.yaml
Normal file
@@ -0,0 +1,38 @@
|
|||||||
|
apiVersion: apps/v1
|
||||||
|
kind: Deployment
|
||||||
|
metadata:
|
||||||
|
name: uptime-kuma
|
||||||
|
namespace: uptime-kuma
|
||||||
|
spec:
|
||||||
|
replicas: 1
|
||||||
|
selector:
|
||||||
|
matchLabels:
|
||||||
|
app: uptime-kuma
|
||||||
|
template:
|
||||||
|
metadata:
|
||||||
|
labels:
|
||||||
|
app: uptime-kuma
|
||||||
|
spec:
|
||||||
|
securityContext:
|
||||||
|
runAsNonRoot: true
|
||||||
|
runAsUser: 1000
|
||||||
|
seccompProfile:
|
||||||
|
type: RuntimeDefault
|
||||||
|
containers:
|
||||||
|
- name: uptime-kuma
|
||||||
|
image: louislam/uptime-kuma:2-slim-rootless
|
||||||
|
ports:
|
||||||
|
- containerPort: 3001
|
||||||
|
securityContext:
|
||||||
|
allowPrivilegeEscalation: false
|
||||||
|
capabilities:
|
||||||
|
drop:
|
||||||
|
- ALL
|
||||||
|
volumeMounts:
|
||||||
|
- mountPath: /data
|
||||||
|
name: uptime-kuma-data
|
||||||
|
volumes:
|
||||||
|
- name: uptime-kuma-data
|
||||||
|
persistentVolumeClaim:
|
||||||
|
claimName: uptime-kuma-pvc
|
||||||
|
|
||||||
24
apps/uptime-kuma/ingress.yaml
Normal file
24
apps/uptime-kuma/ingress.yaml
Normal file
@@ -0,0 +1,24 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
metadata:
|
||||||
|
name: uptime-kuma
|
||||||
|
namespace: uptime-kuma
|
||||||
|
annotations:
|
||||||
|
cert-manager.io/cluster-issuer: letsencrypt-cloudflare
|
||||||
|
traefik.ingress.kubernetes.io/router.entrypoints: websecure
|
||||||
|
spec:
|
||||||
|
tls:
|
||||||
|
- hosts:
|
||||||
|
- status.panopticons.org
|
||||||
|
secretName: wildcard-panopticon-org-tls
|
||||||
|
rules:
|
||||||
|
- host: status.panopticons.org
|
||||||
|
http:
|
||||||
|
paths:
|
||||||
|
- path: /
|
||||||
|
pathType: Prefix
|
||||||
|
backend:
|
||||||
|
service:
|
||||||
|
name: uptime-kuma
|
||||||
|
port:
|
||||||
|
number: 3001
|
||||||
12
apps/uptime-kuma/pvc.yaml
Normal file
12
apps/uptime-kuma/pvc.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: PersistentVolumeClaim
|
||||||
|
metadata:
|
||||||
|
name: uptime-kuma-pvc
|
||||||
|
namespace: uptime-kuma
|
||||||
|
spec:
|
||||||
|
accessModes:
|
||||||
|
- ReadWriteOnce
|
||||||
|
resources:
|
||||||
|
requests:
|
||||||
|
storage: 10Gi
|
||||||
|
|
||||||
12
apps/uptime-kuma/service.yaml
Normal file
12
apps/uptime-kuma/service.yaml
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Service
|
||||||
|
metadata:
|
||||||
|
name: uptime-kuma
|
||||||
|
namespace: uptime-kuma
|
||||||
|
spec:
|
||||||
|
ports:
|
||||||
|
- port: 3001
|
||||||
|
targetPort: 3001
|
||||||
|
selector:
|
||||||
|
app: uptime-kuma
|
||||||
|
|
||||||
16
cluster/cert-manager/letsencrypt.yaml
Normal file
16
cluster/cert-manager/letsencrypt.yaml
Normal file
@@ -0,0 +1,16 @@
|
|||||||
|
apiVersion: cert-manager.io/v1
|
||||||
|
kind: ClusterIssuer
|
||||||
|
metadata:
|
||||||
|
name: letsencrypt-cloudflare
|
||||||
|
spec:
|
||||||
|
acme:
|
||||||
|
server: https://acme-v02.api.letsencrypt.org/directory
|
||||||
|
email: jakebutler@jakebutler.me
|
||||||
|
privateKeySecretRef:
|
||||||
|
name: letsencrypt-cloudflare-key
|
||||||
|
solvers:
|
||||||
|
- dns01:
|
||||||
|
cloudflare:
|
||||||
|
apiTokenSecretRef:
|
||||||
|
name: cloudflare-api-token
|
||||||
|
key: api-token
|
||||||
8
cluster/ingress/ingress.yaml
Normal file
8
cluster/ingress/ingress.yaml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
apiVersion: networking.k8s.io/v1
|
||||||
|
kind: Ingress
|
||||||
|
ingress:
|
||||||
|
- hostname: "*.panopticons.org"
|
||||||
|
service: https://ingress-nginx-controller.ingress-nginx.svc.cluster.local:443
|
||||||
|
originRequest:
|
||||||
|
noTLSVerify: true
|
||||||
|
- service: http_status:404
|
||||||
14
cluster/metallb/metallb-pool.yaml
Normal file
14
cluster/metallb/metallb-pool.yaml
Normal file
@@ -0,0 +1,14 @@
|
|||||||
|
apiVersion: metallb.io/v1beta1
|
||||||
|
kind: IPAddressPool
|
||||||
|
metadata:
|
||||||
|
name: lan-pool
|
||||||
|
namespace: metallb-system
|
||||||
|
spec:
|
||||||
|
addresses:
|
||||||
|
- 192.168.0.200-192.168.0.220
|
||||||
|
---
|
||||||
|
apiVersion: metallb.io/v1beta1
|
||||||
|
kind: L2Advertisement
|
||||||
|
metadata:
|
||||||
|
name: l2
|
||||||
|
namespace: metallb-system
|
||||||
6
cluster/namespaces/cloudflared.yaml
Normal file
6
cluster/namespaces/cloudflared.yaml
Normal file
@@ -0,0 +1,6 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: cloudflared
|
||||||
|
labels:
|
||||||
|
name: cloudflared
|
||||||
10
cluster/namespaces/gitea.yaml
Normal file
10
cluster/namespaces/gitea.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: gitea
|
||||||
|
labels:
|
||||||
|
name: gitea
|
||||||
|
pod-security.kubernetes.io/enforce: restricted
|
||||||
|
pod-security.kubernetes.io/audit: restricted
|
||||||
|
pod-security.kubernetes.io/warn: restricted
|
||||||
|
|
||||||
10
cluster/namespaces/homepage.yaml
Normal file
10
cluster/namespaces/homepage.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: homepage
|
||||||
|
labels:
|
||||||
|
name: homepage
|
||||||
|
pod-security.kubernetes.io/enforce: baseline
|
||||||
|
pod-security.kubernetes.io/audit: restricted
|
||||||
|
pod-security.kubernetes.io/warn: restricted
|
||||||
|
|
||||||
10
cluster/namespaces/jellyseerr.yaml
Normal file
10
cluster/namespaces/jellyseerr.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: jellyseerr
|
||||||
|
labels:
|
||||||
|
name: jellyseerr
|
||||||
|
pod-security.kubernetes.io/enforce: baseline
|
||||||
|
pod-security.kubernetes.io/audit: restricted
|
||||||
|
pod-security.kubernetes.io/warn: restricted
|
||||||
|
|
||||||
8
cluster/namespaces/portainer.yaml
Normal file
8
cluster/namespaces/portainer.yaml
Normal file
@@ -0,0 +1,8 @@
|
|||||||
|
---
|
||||||
|
# Source: portainer/templates/namespace.yaml
|
||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: portainer
|
||||||
|
labels:
|
||||||
|
pod-security.kubernetes.io/enforce: privileged
|
||||||
10
cluster/namespaces/uptime-kuma.yaml
Normal file
10
cluster/namespaces/uptime-kuma.yaml
Normal file
@@ -0,0 +1,10 @@
|
|||||||
|
apiVersion: v1
|
||||||
|
kind: Namespace
|
||||||
|
metadata:
|
||||||
|
name: uptime-kuma
|
||||||
|
labels:
|
||||||
|
name: uptime-kuma
|
||||||
|
pod-security.kubernetes.io/enforce: restricted
|
||||||
|
pod-security.kubernetes.io/audit: restricted
|
||||||
|
pod-security.kubernetes.io/warn: restricted
|
||||||
|
|
||||||
Reference in New Issue
Block a user