From 35f37bd2938d040b27c975674048644bc2117b8a Mon Sep 17 00:00:00 2001 From: ALI YESILKAYA Date: Wed, 17 Jun 2026 12:40:34 +0200 Subject: [PATCH] =?UTF-8?q?fix(stt):=20imagePullSecret=20ghcr-pull=20pour?= =?UTF-8?q?=20l'image=20priv=C3=A9e=20ghcr=20(#5)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * fix(stt): imagePullSecret ghcr-pull pour l'image privée Le Deployment référence un secret de pull ghcr-pull (ns ai) — image ghcr privée. Secret créé manuellement (même pratique que ghostfolio-secret, non versionné). Doc d'install dans stt/README.md. Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_013FmcxGsyXZXogiAHQLjnZT * fix(stt): securityContext conforme PodSecurity restricted (ns ai) runAsNonRoot + runAsUser 1000 + seccompProfile RuntimeDefault (pod), allowPrivilegeEscalation false + drop ALL caps (conteneur). Co-Authored-By: Claude Opus 4.8 Claude-Session: https://claude.ai/code/session_013FmcxGsyXZXogiAHQLjnZT --------- Co-authored-by: Claude --- k8s/apps/stt/deployment.yaml | 14 ++++++++++++++ stt/README.md | 9 +++++++++ 2 files changed, 23 insertions(+) diff --git a/k8s/apps/stt/deployment.yaml b/k8s/apps/stt/deployment.yaml index 8455eb6..79058d9 100644 --- a/k8s/apps/stt/deployment.yaml +++ b/k8s/apps/stt/deployment.yaml @@ -13,9 +13,23 @@ spec: 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: diff --git a/stt/README.md b/stt/README.md index 87c301e..2425228 100644 --- a/stt/README.md +++ b/stt/README.md @@ -39,6 +39,15 @@ Prérequis poste : micro, Piper + voix dans `~/.local/share/piper/`, `aplay` (al Tant que ce n'est pas mergé sur `main`, le cluster ne le prend pas. 3. Le serveur joint LiteLLM (s01, hors cluster) via le Service `litellm-ext` (Endpoints manuel → `192.168.10.1:4000`). +4. **Image privée** : le Deployment référence un `imagePullSecret` `ghcr-pull`. + À créer une fois dans le ns `ai` (même pratique que `ghostfolio-secret`, non versionné) : + ```bash + kubectl create secret docker-registry ghcr-pull \ + --docker-server=ghcr.io \ + --docker-username=Alkatrazz24 \ + --docker-password= \ + -n ai + ``` ## Structure