From e49ea43596a559a55156c6f7a795b666c40eda06 Mon Sep 17 00:00:00 2001 From: Nik Afiq Date: Tue, 17 Mar 2026 21:52:48 +0900 Subject: [PATCH] Add Photoview and the corresponding address in Pihole --- manifests/media/photoview.yaml | 120 +++++++++++++++++++++++++++++++++ values/pihole.yaml | 3 +- 2 files changed, 122 insertions(+), 1 deletion(-) create mode 100644 manifests/media/photoview.yaml diff --git a/manifests/media/photoview.yaml b/manifests/media/photoview.yaml new file mode 100644 index 0000000..1ad6b60 --- /dev/null +++ b/manifests/media/photoview.yaml @@ -0,0 +1,120 @@ +# Apply: kubectl apply -f manifests/media/photoview.yaml +# Delete: kubectl delete -f manifests/media/photoview.yaml +# Description: Photoview deployment with Authentik forwardAuth at photoview.home.arpa. +apiVersion: v1 +kind: Namespace +metadata: + name: photoview +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: photoview-db + namespace: photoview + annotations: + helm.sh/resource-policy: keep +spec: + accessModes: + - ReadWriteOnce + storageClassName: local-path + resources: + requests: + storage: 2Gi +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: photoview + namespace: photoview +spec: + replicas: 1 + selector: + matchLabels: + app: photoview + template: + metadata: + labels: + app: photoview + spec: + containers: + - name: photoview + image: viktorstrate/photoview:2 + ports: + - containerPort: 80 + env: + - name: PHOTOVIEW_DATABASE_DRIVER + value: sqlite + - name: PHOTOVIEW_SQLITE_PATH + value: /db/photoview.db + - name: PHOTOVIEW_MEDIA_CACHE + value: /db/cache + - name: PHOTOVIEW_LISTEN_IP + value: "0.0.0.0" + - name: PHOTOVIEW_LISTEN_PORT + value: "80" + - name: PHOTOVIEW_DISABLE_VIDEO + value: "true" + volumeMounts: + - name: db + mountPath: /db + - name: photos-other + mountPath: /photos/other + readOnly: true + - name: photos-art + mountPath: /photos/art + readOnly: true + volumes: + - name: db + persistentVolumeClaim: + claimName: photoview-db + - name: photos-other + nfs: + server: 192.168.7.183 + path: /mnt/storage/jellyfin/other + - name: photos-art + nfs: + server: 192.168.7.183 + path: /mnt/storage/jellyfin/art +--- +apiVersion: v1 +kind: Service +metadata: + name: photoview + namespace: photoview +spec: + selector: + app: photoview + ports: + - port: 80 + targetPort: 80 +--- +apiVersion: cert-manager.io/v1 +kind: Certificate +metadata: + name: photoview-tls + namespace: photoview +spec: + secretName: photoview-tls + issuerRef: + name: internal-ca-issuer + kind: ClusterIssuer + dnsNames: + - photoview.home.arpa +--- +apiVersion: traefik.io/v1alpha1 +kind: IngressRoute +metadata: + name: photoview + namespace: photoview +spec: + entryPoints: + - websecure + routes: + - kind: Rule + match: Host(`photoview.home.arpa`) + services: + - name: photoview + namespace: photoview + port: 80 + tls: + secretName: photoview-tls \ No newline at end of file diff --git a/values/pihole.yaml b/values/pihole.yaml index 7dd3551..11276e4 100644 --- a/values/pihole.yaml +++ b/values/pihole.yaml @@ -75,4 +75,5 @@ dnsmasq: - address=/glances-debian.home.arpa/192.168.7.77 - address=/ca.home.arpa/192.168.7.77 - address=/auth.home.arpa/192.168.7.77 - - address=/traefik.home.arpa/192.168.7.77 \ No newline at end of file + - address=/traefik.home.arpa/192.168.7.77 + - address=/photoview.home.arpa/192.168.7.77 \ No newline at end of file