plex
This commit is contained in:
23
argocd/templates/plex.yaml
Normal file
23
argocd/templates/plex.yaml
Normal file
@@ -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
|
||||||
|
|
||||||
@@ -1,53 +1,54 @@
|
|||||||
apiVersion: v1
|
#apiVersion: v1
|
||||||
kind: Service
|
#kind: Service
|
||||||
metadata:
|
#metadata:
|
||||||
name: plex
|
# name: plex
|
||||||
spec:
|
#spec:
|
||||||
ports:
|
# ports:
|
||||||
- name: app
|
# - name: app
|
||||||
port: 32400
|
# port: 32400
|
||||||
protocol: TCP
|
# protocol: TCP
|
||||||
targetPort: 32400
|
# targetPort: 32400
|
||||||
clusterIP: None
|
# clusterIP: None
|
||||||
type: ClusterIP
|
# type: ClusterIP
|
||||||
|
#
|
||||||
---
|
#---
|
||||||
|
#
|
||||||
apiVersion: v1
|
#apiVersion: v1
|
||||||
kind: Endpoints
|
#kind: Endpoints
|
||||||
metadata:
|
#metadata:
|
||||||
name: plex
|
# name: plex
|
||||||
subsets:
|
#subsets:
|
||||||
- addresses:
|
#- addresses:
|
||||||
- ip: 192.168.20.253
|
# - ip: 192.168.20.253
|
||||||
ports:
|
# ports:
|
||||||
- name: app
|
# - name: app
|
||||||
port: 32400
|
# port: 32400
|
||||||
protocol: TCP
|
# protocol: TCP
|
||||||
|
#
|
||||||
---
|
#---
|
||||||
|
#
|
||||||
apiVersion: networking.k8s.io/v1
|
#apiVersion: networking.k8s.io/v1
|
||||||
kind: Ingress
|
#kind: Ingress
|
||||||
metadata:
|
#metadata:
|
||||||
name: plex-ingress
|
# name: plex-ingress
|
||||||
annotations:
|
# annotations:
|
||||||
kubernetes.io/ingress.class: nginx
|
# kubernetes.io/ingress.class: nginx
|
||||||
cert-manager.io/cluster-issuer: letsencrypt-production
|
# cert-manager.io/cluster-issuer: letsencrypt-production
|
||||||
nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
|
# nginx.ingress.kubernetes.io/backend-protocol: "HTTPS"
|
||||||
spec:
|
#spec:
|
||||||
rules:
|
# rules:
|
||||||
- host: plex.durp.info
|
# - host: plex.durp.info
|
||||||
http:
|
# http:
|
||||||
paths:
|
# paths:
|
||||||
- path: /
|
# - path: /
|
||||||
pathType: Prefix
|
# pathType: Prefix
|
||||||
backend:
|
# backend:
|
||||||
service:
|
# service:
|
||||||
name: plex
|
# name: plex
|
||||||
port:
|
# port:
|
||||||
number: 32400
|
# number: 32400
|
||||||
tls:
|
# tls:
|
||||||
- hosts:
|
# - hosts:
|
||||||
- plex.durp.info
|
# - plex.durp.info
|
||||||
secretName: plex-tls
|
# secretName: plex-tls
|
||||||
|
#
|
||||||
7
plex/Chart.yaml
Normal file
7
plex/Chart.yaml
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
apiVersion: v2
|
||||||
|
name: plex
|
||||||
|
description: A Helm chart for Kubernetes
|
||||||
|
type: application
|
||||||
|
|
||||||
|
version: 0.1.0
|
||||||
|
appVersion: "1.16.0"
|
||||||
24
plex/templates/ingress.yaml
Normal file
24
plex/templates/ingress.yaml
Normal file
@@ -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
|
||||||
51
plex/templates/plex-pv.yaml
Normal file
51
plex/templates/plex-pv.yaml
Normal file
@@ -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
|
||||||
27
plex/templates/plex-pvc.yaml
Normal file
27
plex/templates/plex-pvc.yaml
Normal file
@@ -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
|
||||||
13
plex/templates/service.yaml
Normal file
13
plex/templates/service.yaml
Normal file
@@ -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
|
||||||
Reference in New Issue
Block a user