diff --git a/apply.sh b/apply.sh index 314c158..337c331 100755 --- a/apply.sh +++ b/apply.sh @@ -1,15 +1,19 @@ #! /bin/bash -eu -helm upgrade --install ingress bitnami/nginx-ingress-controller -n nginx-ingress -f nginx-values.yaml - ## install nginx ingress controller grafana dashboards # https://github.com/kubernetes/ingress-nginx/tree/master/deploy/grafana/dashboards +kubectl -n kube-system apply -f https://raw.githubusercontent.com/coreos/flannel/master/Documentation/kube-flannel.yml + k apply -f prometheus-pv.yml -n default helm upgrade --install prometheus -n default -f prometheus-values.yaml stable/prometheus-operator -helm apply -f prometheus-ingress.yaml +k create namespace nginx-ingress + +helm upgrade --install ingress bitnami/nginx-ingress-controller -n nginx-ingress -f nginx-values.yaml + +k apply -f prometheus-ingress.yml kubectl -n default create secret generic oauth2-proxy-creds \ --from-literal=cookie-secret=ZuThURd/AK9ouHNxg0Czhg== \ @@ -20,9 +24,9 @@ helm upgrade oauth2-proxy --install stable/oauth2-proxy \ --reuse-values \ --values oauth2-proxy-config.yaml -k apply -f postgres-pv.yaml +k apply -f postgres-pv.yml -n default -helm upgrade --install postgres -n db -f postgres-values.yaml bitnami/postgresql +k create namespace db && helm upgrade --install postgres -n db -f postgres-values.yaml bitnami/postgresql # media applications diff --git a/media.yaml b/media.yaml index 09f1e7a..515b1f4 100644 --- a/media.yaml +++ b/media.yaml @@ -130,42 +130,137 @@ spec: # storage: 2Gi # --- -apiVersion: v1 -kind: Service -metadata: - name: plex-proxy -spec: - ports: - - port: 80 - targetPort: 80 - selector: - app: plex-proxy +# apiVersion: v1 +# kind: Service +# metadata: +# name: plex-proxy +# spec: +# ports: +# - port: 80 +# targetPort: 80 +# selector: +# app: plex-proxy ---- +# --- + +# apiVersion: apps/v1 +# kind: Deployment +# metadata: +# name: plex-proxy +# spec: +# selector: +# matchLabels: +# app: plex-proxy +# replicas: 1 +# template: +# metadata: +# labels: +# app: plex-proxy +# spec: +# containers: +# - name: plex-proxy +# image: alpine/socat +# args: +# - "tcp-listen:80,fork,reuseaddr" +# - "tcp-connect:192.168.1.2:32444" +# ports: +# - containerPort: 80 apiVersion: apps/v1 kind: Deployment metadata: - name: plex-proxy + name: plex spec: selector: matchLabels: - app: plex-proxy + app: plex replicas: 1 template: metadata: labels: - app: plex-proxy + app: plex spec: + volumes: + - name: config + hostPath: + path: /mnt/plex + type: DirectoryOrCreate + - name: transcode + hostPath: + path: /mnt/plex-temp + type: DirectoryOrCreate + - name: downloads + hostPath: + path: /mnt/downloads + type: Directory containers: - - name: plex-proxy - image: alpine/socat - args: - - "tcp-listen:80,fork,reuseaddr" - - "tcp-connect:192.168.1.2:32444" - ports: - - containerPort: 80 + - name: plex + image: plexinc/pms-docker + # securityContext: + # runAsUser: 0 + imagePullPolicy: Always + ports: + - containerPort: 32400 + name: plex-port + protocol: TCP + - containerPort: 3005 + protocol: TCP + - containerPort: 8324 + protocol: TCP + - containerPort: 32469 + protocol: TCP + - containerPort: 1900 + protocol: UDP + - containerPort: 32410 + protocol: UDP + - containerPort: 32412 + protocol: UDP + - containerPort: 32413 + protocol: UDP + - containerPort: 32414 + protocol: UDP + env: + - name: TZ + value: Australia/Melbourne + - name: PLEX_CLAIM + value: "claim-b_w2MErxts9BHa8p356c" + - name: HOSTNAME + value: home-server + - name: PLEX_UID + value: "1000" + - name: PLEX_PGID + value: "1000" + volumeMounts: + - name: config + mountPath: /config + - name: transcode + mountPath: /transcode + - name: downloads + mountPath: /data + resources: + requests: + cpu: 800m + memory: 700Mi + limits: + cpu: 1500m + memory: 1500Mi + +--- +apiVersion: v1 +kind: Service +metadata: + name: plex + labels: + app: plex +spec: + type: ClusterIP + ports: + - port: 80 + targetPort: plex-port + protocol: TCP + selector: + app: plex --- apiVersion: networking.k8s.io/v1beta1