k3s/services/nextcloud/nextcloud-deployment.yaml
2026-07-30 18:56:29 -04:00

91 lines
2.1 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: nextcloud-app
namespace: nextcloud
annotations:
keel.sh/policy: "all"
keel.sh/match-tag: "true"
keel.sh/schedule: "0 3 * * *"
spec:
replicas: 1
selector:
matchLabels:
app: nextcloud-app
template:
metadata:
labels:
app: nextcloud-app
spec:
containers:
- name: nextcloud
image: nextcloud:apache
envFrom:
- secretRef:
name: nextcloud-secrets
env:
- name: POSTGRES_HOST
value: nextcloud-db
- name: OVERWRITEPROTOCOL
value: "https"
- name: TRUSTED_PROXIES
value: "10.42.0.0/16 10.43.0.0/16"
- name: NEXTCLOUD_TRUSTED_DOMAINS
value: "cloud.mynest.love"
volumeMounts:
- name: nextcloud-core-data
mountPath: /var/www/html
- name: nextcloud-user-data
mountPath: /var/www/html/data
volumes:
- name: nextcloud-core-data
persistentVolumeClaim:
claimName: nextcloud-app-pvc
- name: nextcloud-user-data
persistentVolumeClaim:
claimName: nextcloud-media-nfs-pvc
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nextcloud-app-pvc
namespace: nextcloud
labels:
recurring-job.longhorn.io/source: "enabled"
recurring-job-group.longhorn.io/app-config-group: "enabled"
spec:
accessModes:
- ReadWriteOnce
storageClassName: longhorn
resources:
requests:
storage: 100Gi
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: nextcloud-media-nfs-pv
spec:
capacity:
storage: 1Ti
volumeMode: Filesystem
accessModes:
- ReadWriteMany
persistentVolumeReclaimPolicy: Retain
storageClassName: robin-nfs
nfs:
server: robin.home.nest
path: /nextcloud
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: nextcloud-media-nfs-pvc
namespace: nextcloud
spec:
accessModes:
- ReadWriteMany
storageClassName: robin-nfs
resources:
requests:
storage: 1Ti