apiVersion: apps/v1 kind: Deployment metadata: name: soteria labels: app.kubernetes.io/name: soteria app.kubernetes.io/component: api spec: replicas: 1 selector: matchLabels: app.kubernetes.io/name: soteria app.kubernetes.io/component: api template: metadata: labels: app.kubernetes.io/name: soteria app.kubernetes.io/component: api spec: serviceAccountName: soteria containers: - name: soteria image: registry.bstein.dev/infra/soteria:0.1.0 imagePullPolicy: IfNotPresent ports: - name: http containerPort: 8080 envFrom: - configMapRef: name: soteria env: - name: SOTERIA_SECRET_NAMESPACE value: "soteria" - name: SOTERIA_RESTIC_SECRET_NAME value: "soteria-restic" - name: SOTERIA_JOB_TTL_SECONDS value: "86400" livenessProbe: httpGet: path: /healthz port: http initialDelaySeconds: 5 periodSeconds: 10 timeoutSeconds: 2 readinessProbe: httpGet: path: /readyz port: http initialDelaySeconds: 2 periodSeconds: 5 timeoutSeconds: 2 resources: requests: cpu: 50m memory: 64Mi limits: cpu: 200m memory: 256Mi securityContext: allowPrivilegeEscalation: false runAsNonRoot: true runAsUser: 65532 capabilities: drop: ["ALL"]