From 71f7e2ad895ce1237edfbdfd0928f07ef28cb649 Mon Sep 17 00:00:00 2001 From: DeveloperDurp Date: Sun, 11 Dec 2022 05:20:36 -0600 Subject: [PATCH] plex --- argocd/templates/plex.yaml | 23 +++++ internalproxy/templates/plex-ingress.yaml | 107 +++++++++++----------- plex/Chart.yaml | 7 ++ plex/templates/ingress.yaml | 24 +++++ plex/templates/plex-pv.yaml | 51 +++++++++++ plex/templates/plex-pvc.yaml | 27 ++++++ plex/templates/service.yaml | 13 +++ 7 files changed, 199 insertions(+), 53 deletions(-) create mode 100644 argocd/templates/plex.yaml create mode 100644 plex/Chart.yaml create mode 100644 plex/templates/ingress.yaml create mode 100644 plex/templates/plex-pv.yaml create mode 100644 plex/templates/plex-pvc.yaml create mode 100644 plex/templates/service.yaml diff --git a/argocd/templates/plex.yaml b/argocd/templates/plex.yaml new file mode 100644 index 0000000..1da8dcc --- /dev/null +++ b/argocd/templates/plex.yaml @@ -0,0 +1,23 @@ +apiVersion: argoproj.io/v1alpha1 +kind: Application +metadata: + name: plex + namespace: argocd +spec: + project: default + source: + repoURL: https://github.com/DeveloperDurp/homelab.git + targetRevision: main + path: plex + directory: + recurse: true + destination: + server: https://kubernetes.default.svc + namespace: plex + syncPolicy: + automated: + prune: true + selfHeal: true + syncOptions: + - CreateNamespace=true + diff --git a/internalproxy/templates/plex-ingress.yaml b/internalproxy/templates/plex-ingress.yaml index 90b23b8..ca9ec81 100644 --- a/internalproxy/templates/plex-ingress.yaml +++ b/internalproxy/templates/plex-ingress.yaml @@ -1,53 +1,54 @@ -apiVersion: v1 -kind: Service -metadata: - name: plex -spec: - ports: - - name: app - port: 32400 - protocol: TCP - targetPort: 32400 - clusterIP: None - type: ClusterIP - ---- - -apiVersion: v1 -kind: Endpoints -metadata: - name: plex -subsets: -- addresses: - - ip: 192.168.20.253 - ports: - - name: app - port: 32400 - protocol: TCP - ---- - -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: plex-ingress - annotations: - kubernetes.io/ingress.class: nginx - cert-manager.io/cluster-issuer: letsencrypt-production - nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" -spec: - rules: - - host: plex.durp.info - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: plex - port: - number: 32400 - tls: - - hosts: - - plex.durp.info - secretName: plex-tls +#apiVersion: v1 +#kind: Service +#metadata: +# name: plex +#spec: +# ports: +# - name: app +# port: 32400 +# protocol: TCP +# targetPort: 32400 +# clusterIP: None +# type: ClusterIP +# +#--- +# +#apiVersion: v1 +#kind: Endpoints +#metadata: +# name: plex +#subsets: +#- addresses: +# - ip: 192.168.20.253 +# ports: +# - name: app +# port: 32400 +# protocol: TCP +# +#--- +# +#apiVersion: networking.k8s.io/v1 +#kind: Ingress +#metadata: +# name: plex-ingress +# annotations: +# kubernetes.io/ingress.class: nginx +# cert-manager.io/cluster-issuer: letsencrypt-production +# nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" +#spec: +# rules: +# - host: plex.durp.info +# http: +# paths: +# - path: / +# pathType: Prefix +# backend: +# service: +# name: plex +# port: +# number: 32400 +# tls: +# - hosts: +# - plex.durp.info +# secretName: plex-tls +# \ No newline at end of file diff --git a/plex/Chart.yaml b/plex/Chart.yaml new file mode 100644 index 0000000..f702fa7 --- /dev/null +++ b/plex/Chart.yaml @@ -0,0 +1,7 @@ +apiVersion: v2 +name: plex +description: A Helm chart for Kubernetes +type: application + +version: 0.1.0 +appVersion: "1.16.0" diff --git a/plex/templates/ingress.yaml b/plex/templates/ingress.yaml new file mode 100644 index 0000000..322bd31 --- /dev/null +++ b/plex/templates/ingress.yaml @@ -0,0 +1,24 @@ +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: plex-ingress + annotations: + kubernetes.io/ingress.class: nginx + cert-manager.io/cluster-issuer: letsencrypt-production + nginx.ingress.kubernetes.io/backend-protocol: "HTTPS" +spec: + rules: + - host: plex.durp.info + http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: plex + port: + number: 32400 + tls: + - hosts: + - plex.durp.info + secretName: plex-tls \ No newline at end of file diff --git a/plex/templates/plex-pv.yaml b/plex/templates/plex-pv.yaml new file mode 100644 index 0000000..0692087 --- /dev/null +++ b/plex/templates/plex-pv.yaml @@ -0,0 +1,51 @@ +apiVersion: v1 +kind: PersistentVolume +metadata: + annotations: + pv.kubernetes.io/provisioned-by: durp.info/nfs + finalizers: + - kubernetes.io/pv-protection + name: plex-nfs-pv +spec: + accessModes: + - ReadWriteOnce + capacity: + storage: 1000Gi + claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: plex-nfs-pvc + namespace: plex + nfs: + path: /mnt/user/plex + server: 192.168.20.253 + persistentVolumeReclaimPolicy: Retain + storageClassName: nfs-storage + volumeMode: Filesystem + +--- + +apiVersion: v1 +kind: PersistentVolume +metadata: + annotations: + pv.kubernetes.io/provisioned-by: durp.info/nfs + finalizers: + - kubernetes.io/pv-protection + name: plex-pv +spec: + accessModes: + - ReadWriteOnce + capacity: + storage: 10Gi + claimRef: + apiVersion: v1 + kind: PersistentVolumeClaim + name: plex-pvc + namespace: plex + nfs: + path: /mnt/user/plex + server: 192.168.20.253 + persistentVolumeReclaimPolicy: Retain + storageClassName: longhorn + volumeMode: Filesystem diff --git a/plex/templates/plex-pvc.yaml b/plex/templates/plex-pvc.yaml new file mode 100644 index 0000000..47caad4 --- /dev/null +++ b/plex/templates/plex-pvc.yaml @@ -0,0 +1,27 @@ +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: plex-nfs-pvc + namespace: plex +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 1000Gi + storageClassName: nfs-storage + +--- + +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: plex-pvc + namespace: plex +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: 10Gi + storageClassName: longhorn \ No newline at end of file diff --git a/plex/templates/service.yaml b/plex/templates/service.yaml new file mode 100644 index 0000000..5e3b147 --- /dev/null +++ b/plex/templates/service.yaml @@ -0,0 +1,13 @@ +apiVersion: v1 +kind: Service +metadata: + name: service +spec: + selector: + component: plex + type: ClusterIP + ports: + - name: https + port: 32400 + targetPort: 32400 + protocol: TCP \ No newline at end of file