Adds nextcloud app.

This commit is contained in:
2026-06-19 21:33:17 +00:00
parent 5e98b3fce6
commit 110eca06ce
10 changed files with 303 additions and 0 deletions

View File

@@ -0,0 +1,106 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: nextcloud
namespace: {{ .namespace }}
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
component: web
template:
metadata:
labels:
component: web
spec:
securityContext:
runAsUser: 0
runAsNonRoot: false
seccompProfile:
type: RuntimeDefault
containers:
- name: nextcloud
image: nextcloud:34.0.0-apache
ports:
- name: http
containerPort: 80
protocol: TCP
env:
- name: NEXTCLOUD_TRUSTED_DOMAINS
value: {{ .domain }}
- name: NEXTCLOUD_ADMIN_USER
value: {{ .adminUser }}
- name: NEXTCLOUD_ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: nextcloud-secrets
key: adminPassword
- name: POSTGRES_DB
value: {{ .db.name }}
- name: POSTGRES_USER
value: {{ .db.user }}
- name: POSTGRES_PASSWORD
valueFrom:
secretKeyRef:
name: nextcloud-secrets
key: dbPassword
- name: POSTGRES_HOST
value: {{ .db.host }}
- name: REDIS_HOST
value: {{ .redis.host }}
- name: REDIS_HOST_PORT
value: "6379"
- name: REDIS_HOST_PASSWORD
valueFrom:
secretKeyRef:
name: nextcloud-secrets
key: redis.password
- name: OVERWRITEPROTOCOL
value: https
- name: OVERWRITECLIURL
value: https://{{ .domain }}
- name: TRUSTED_PROXIES
value: 10.0.0.0/8
resources:
limits:
cpu: 1000m
ephemeral-storage: 1Gi
memory: 1Gi
requests:
cpu: 50m
ephemeral-storage: 50Mi
memory: 256Mi
volumeMounts:
- name: nextcloud-data
mountPath: /var/www/html
livenessProbe:
httpGet:
path: /status.php
port: 80
httpHeaders:
- name: Host
value: {{ .domain }}
initialDelaySeconds: 120
timeoutSeconds: 5
periodSeconds: 30
failureThreshold: 6
readinessProbe:
httpGet:
path: /status.php
port: 80
httpHeaders:
- name: Host
value: {{ .domain }}
initialDelaySeconds: 60
timeoutSeconds: 3
periodSeconds: 15
failureThreshold: 3
securityContext:
readOnlyRootFilesystem: false
volumes:
- name: nextcloud-data
persistentVolumeClaim:
claimName: nextcloud-data
restartPolicy: Always