10e. Scripts d'Infrastructure

L'orchestration, le déploiement et la maintenance du framework ECHO reposent sur un ensemble de scripts Shell et PowerShell. Ils garantissent la reproductibilité stricte de l'environnement, de l'hôte Windows jusqu'aux conteneurs Docker de la machine virtuelle Ubuntu.

Cartographie des Scripts

ScriptEnvironnementRôle Principal
install-hyperv.ps1Windows (Hôte)Injection Zip via VHDX et démarrage VM
sync-echo.shUbuntu (VM)Extraction, distribution des fichiers et attribution des droits
install-stack.shUbuntu (VM)Orchestration globale Docker (stack-echo.yml)
enable-bunkerweb.sh / disable-bunkerweb.shUbuntu (VM)Bascule (toggle) de l'exposition sécurisée via BunkerWeb et lancement d'ECHO Auth
config-owui.shUbuntu (VM)Provisionnement de l'API Open WebUI (Arsenal et Configuration)
upgrade-echo.shUbuntu (VM)Mise à niveau majeure de l'infrastructure hôte

Architecture de Déploiement (Windows vers VM)

Le déploiement d'une nouvelle version d'ECHO s'effectue sans connexion réseau entre l'hôte et la machine virtuelle.

install-hyperv.ps1

Ce script PowerShell s'exécute avec des privilèges administrateur sur l'hôte Windows. Il orchestre le transfert physique des données en contournant les limitations réseau :

L'orchestration interne est assurée par le déploiement de stack-echo.yml (Docker Compose). Une fois les services en ligne, la sécurisation réseau (BunkerWeb) est initialisée ou arrêtée dynamiquement via enable-bunkerweb.sh.

config-owui.sh (Configuration Automatique)

Ce script d'orchestration post-déploiement est exécuté par la grappe pour configurer automatiquement l'interface et le modèle.

Mise à Niveau Majeure

upgrade-echo.sh

Ce script prend en charge la mise à niveau majeure de l'infrastructure hôte (Ubuntu) de la machine virtuelle. Il assure la transition sécurisée vers les nouvelles versions d'ECHO en mettant à jour les dépendances système, en migrant les bases de données si nécessaire, et en réalignant la configuration Docker Compose avec le nouveau référentiel, tout en préservant l'intégrité des données utilisateur stockées dans l'Espace Personnel.

Orchestration Interne (VM)

sync-echo.sh

Une fois la VM démarrée, ce script extrait l'archive echo-update.zip depuis le point de montage du disque Seed. Il distribue les fichiers dans l'arborescence de production (/opt/ECHO) et rétablit les permissions d'exécution (chmod +x) sur l'ensemble des scripts de la grappe.

install-stack.sh

Il s'agit de l'ordonnanceur principal de la grappe Docker. Ses responsabilités incluent :

config-owui.sh

Ce script intervient dans la phase de post-démarrage (Post-Start Provisioning). Il interagit directement avec l'API REST d'Open WebUI pour :

← Audio Workers    Inférence Distante (Edge Computing) →