Files
wild-directory/etherpad/versions/2/deployment.yaml
2026-06-19 21:32:58 +00:00

98 lines
2.5 KiB
YAML

apiVersion: apps/v1
kind: Deployment
metadata:
name: etherpad
namespace: etherpad
spec:
replicas: 1
strategy:
type: Recreate
selector:
matchLabels:
component: web
template:
metadata:
labels:
component: web
spec:
securityContext:
runAsNonRoot: true
runAsUser: 5001
runAsGroup: 0
fsGroup: 5001
seccompProfile:
type: RuntimeDefault
containers:
- name: etherpad
image: etherpad/etherpad:2.2.7
ports:
- name: http
containerPort: 9001
protocol: TCP
env:
- name: DB_TYPE
value: postgres
- name: DB_HOST
value: {{ .db.host }}
- name: DB_PORT
value: "{{ .db.port }}"
- name: DB_NAME
value: {{ .db.name }}
- name: DB_USER
value: {{ .db.user }}
- name: DB_PASS
valueFrom:
secretKeyRef:
name: etherpad-secrets
key: dbPassword
- name: TITLE
value: {{ .title }}
- name: ADMIN_PASSWORD
valueFrom:
secretKeyRef:
name: etherpad-secrets
key: adminPassword
- name: TRUST_PROXY
value: "true"
- name: EDIT_ONLY
value: "false"
resources:
limits:
cpu: 500m
ephemeral-storage: 1Gi
memory: 512Mi
requests:
cpu: 50m
ephemeral-storage: 50Mi
memory: 128Mi
volumeMounts:
- name: etherpad-data
mountPath: /opt/etherpad-lite/var
livenessProbe:
httpGet:
path: /
port: 9001
initialDelaySeconds: 60
timeoutSeconds: 5
periodSeconds: 15
failureThreshold: 6
readinessProbe:
httpGet:
path: /
port: 9001
initialDelaySeconds: 30
timeoutSeconds: 3
periodSeconds: 10
failureThreshold: 3
securityContext:
allowPrivilegeEscalation: false
capabilities:
drop:
- ALL
readOnlyRootFilesystem: false
volumes:
- name: etherpad-data
persistentVolumeClaim:
claimName: etherpad-data
restartPolicy: Always