added photoprism

This commit is contained in:
Jos Wilbrink 2024-01-19 23:16:28 +01:00
parent 96fedc055d
commit 56c16ea80f
5 changed files with 5442 additions and 33 deletions

View File

@ -2,6 +2,7 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-routes-prometheus
namespace: observability
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
@ -25,6 +26,8 @@ apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-routes-grafana
namespace: observability
annotations:
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:

5262
photoprism/log Normal file

File diff suppressed because it is too large Load Diff

177
photoprism/manifest.yml Normal file
View File

@ -0,0 +1,177 @@
apiVersion: v1
kind: Namespace
metadata:
name: photoprism
---
apiVersion: v1
kind: Secret
metadata:
name: photoprism-secrets
namespace: photoprism
stringData:
PHOTOPRISM_ADMIN_PASSWORD: "Akzq#20!"
PHOTOPRISM_DATABASE_DSN: root:Akzq#20!@tcp(mariadb:3306)/photoprism?charset=utf8mb4,utf8&parseTime=true
---
apiVersion: apps/v1
kind: StatefulSet
metadata:
name: photoprism
namespace: photoprism
spec:
selector:
matchLabels:
app: photoprism
serviceName: photoprism
replicas: 1
template:
metadata:
labels:
app: photoprism
spec:
containers:
- name: photoprism
image: photoprism/photoprism:latest
env:
- name: PHOTOPRISM_UPLOAD_NSFW
value: "true"
- name: PHOTOPRISM_DETECT_NSFW
value: "true"
- name: PHOTOPRISM_DEBUG
value: "true"
- name: PHOTOPRISM_DATABASE_DRIVER
value: mariadb
- name: PHOTOPRISM_HTTP_HOST
value: 0.0.0.0
- name: PHOTOPRISM_HTTP_PORT
value: "2342"
envFrom:
- secretRef:
name: photoprism-secrets
optional: false
ports:
- containerPort: 2342
name: http
volumeMounts:
- mountPath: /photoprism/originals
name: originals
- mountPath: /photoprism/import
name: import
- mountPath: /photoprism/storage
name: storage
readinessProbe:
httpGet:
path: /api/v1/status
port: 2342
volumes:
- name: originals
hostPath:
path: /data/photoprism/originals
type: Directory
- name: import
hostPath:
path: /data/photoprism/import
type: Directory
- name: storage
hostPath:
path: /data/photoprism/storage
type: Directory
---
apiVersion: v1
kind: Service
metadata:
name: photoprism
namespace: photoprism
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 2342
selector:
app: photoprism
type: ClusterIP
---
apiVersion: v1
kind: Service
metadata:
namespace: photoprism
name: mariadb
spec:
ports:
- port: 3306
selector:
app: mariadb
clusterIP: None
---
apiVersion: apps/v1
kind: Deployment
metadata:
name: mariadb
namespace: photoprism
spec:
selector:
matchLabels:
app: mariadb
strategy:
type: Recreate
template:
metadata:
labels:
app: mariadb
spec:
containers:
- image: mariadb
name: mariadb
env:
- name: MARIADB_ROOT_PASSWORD
value: "Akzq#20!"
- name: MARIADB_DATABASE
value: "photoprism"
ports:
- containerPort: 3306
name: mariadb
volumeMounts:
- name: mariadb-persistent-storage
mountPath: /var/lib/mariadb
volumes:
- name: mariadb-persistent-storage
persistentVolumeClaim:
claimName: mariadb-pv-claim
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: mariadb-pv-claim
namespace: photoprism
spec:
storageClassName: data-hostpath
volumeMode: Filesystem
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 100Gi
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-routes-photoprism
namespace: photoprism
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
tls:
- hosts:
- photo.jsnet.io
secretName: tls-secret-photoprism
rules:
- host: photo.jsnet.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: photoprism
port:
number: 80

View File

@ -1,22 +0,0 @@
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: ingress-routes-rancher
annotations:
cert-manager.io/cluster-issuer: "letsencrypt-prod"
spec:
tls:
- hosts:
- rancher.jsnet.io
secretName: tls-secret-rancher-ingress
rules:
- host: rancher.jsnet.io
http:
paths:
- path: /
pathType: Prefix
backend:
service:
name: rancher
port:
number: 80

View File

@ -1,11 +0,0 @@
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: prometheus-nfs-pvc
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn-nfs
resources:
requests:
storage: 10Gi