apiVersion: apps/v1 kind: Deployment metadata: name: stt-server namespace: ai spec: replicas: 1 selector: matchLabels: app: stt-server template: metadata: labels: app: stt-server spec: # Image privée sur ghcr → secret de pull créé manuellement dans le ns ai # (cf. README : kubectl create secret docker-registry ghcr-pull ...) imagePullSecrets: - name: ghcr-pull # Conformité PodSecurity "restricted" (namespace ai) securityContext: runAsNonRoot: true runAsUser: 1000 seccompProfile: type: RuntimeDefault containers: - name: stt-server image: ghcr.io/alkatrazz24/funk-stt-server:latest securityContext: allowPrivilegeEscalation: false capabilities: drop: ["ALL"] ports: - containerPort: 8000 env: # LiteLLM (s01) joint via le Service Endpoints litellm-ext - name: STT_LITELLM_URL value: "http://litellm-ext:4000/v1/chat/completions" - name: STT_LITELLM_KEY value: "lm-studio" - name: STT_MODEL value: "hermes-default" readinessProbe: httpGet: path: /healthz port: 8000 initialDelaySeconds: 5 periodSeconds: 10 livenessProbe: httpGet: path: /healthz port: 8000 initialDelaySeconds: 10 periodSeconds: 20 resources: requests: cpu: 50m memory: 128Mi limits: cpu: 500m memory: 256Mi