apiVersion: apps/v1 kind: StatefulSet metadata: name: zetikettes-app spec: serviceName: "zetikettes" replicas: 1 selector: matchLabels: app: zetikettes template: metadata: labels: app: zetikettes spec: containers: # --- The Backend (Stateful) --- - name: backend image: pol/zetikettes:latest imagePullPolicy: Never ports: - containerPort: 8000 volumeMounts: - name: var-lib-zetikettes mountPath: /data subPath: data env: - name: CSRF_TRUSTED_ORIGINS value: https://zetikettes.jenova.ponteilla.net - name: STATIC_URL value: /zetikettes/srv/static/ # --- The Frontend (Nginx Sidecar) --- - name: nginx-sidecar image: nginx:alpine ports: - containerPort: 80 volumeMounts: - name: var-lib-zetikettes mountPath: /var/lib/zetikettes - name: config-volume mountPath: /etc/nginx/conf.d/default.conf subPath: default.conf volumes: - name: config-volume configMap: name: nginx-config - name: var-lib-zetikettes hostPath: path: /var/lib/zetikettes type: DirectoryOrCreate