apiVersion: apps/v1
kind: Deployment
metadata:
  name: tautulli
  labels:
    app: tautulli
spec:
  replicas: 1
  selector:
    matchLabels:
      app: tautulli
  template:
    metadata:
      labels:
        app: tautulli
    spec:
      containers:
        - name: tautulli
          image: linuxserver/tautulli
          env:
            - name: TZ
              value: "America/New_York"
          resources:
            limits:
              memory: "1Gi"
            requests:
              memory: "512Mi"
          ports:
            - containerPort: 8181
              name: tautulli-web
          volumeMounts:
            - mountPath: /config
              name: tautulli-config
              subPath: tautulli
      volumes:
        - name: tautulli-config
          persistentVolumeClaim:
            claimName: tautulli-config
---
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
  name: tautulli-config
  labels:
    k8s-app: tautulli
spec:
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 1Gi
---
kind: Service
apiVersion: v1
metadata:
  name: tautulli
spec:
  selector:
    app: tautulli
  ports:
    - protocol: TCP
      port: 80
      targetPort: 8181
      name: tautulli-web
  type: LoadBalancer