
- Création du répertoire scripts/ avec tous les scripts d'installation et de test - Scripts d'installation automatique (install.sh, quick-start.sh) - Scripts de maintenance complète (maintenance.sh) - Scripts de test (test-installation.sh, test-api.sh, test-services.sh, test-integration.sh) - Amélioration du Dockerfile avec healthchecks et sécurité - Mise à jour du docker-compose.yml avec healthchecks et dépendances - Makefile étendu avec nouvelles commandes - Documentation complète mise à jour - Fichier de configuration d'exemple (env.example) - app.py corrigé et fonctionnel
57 lines
1.6 KiB
Python
Executable File
57 lines
1.6 KiB
Python
Executable File
#!/usr/bin/env python3
|
|
"""
|
|
Script de démarrage du serveur backend
|
|
"""
|
|
import sys
|
|
import os
|
|
import subprocess
|
|
|
|
def install_requirements():
|
|
"""Installe les dépendances nécessaires"""
|
|
print("🔧 Installation des dépendances...")
|
|
try:
|
|
# Installation via apt
|
|
subprocess.run(["apt", "update"], check=True)
|
|
subprocess.run(["apt", "install", "-y", "python3-pip"], check=True)
|
|
|
|
# Installation via pip
|
|
subprocess.run(["python3", "-m", "pip", "install", "fastapi", "uvicorn"], check=True)
|
|
print("✅ Dépendances installées avec succès")
|
|
return True
|
|
except Exception as e:
|
|
print(f"❌ Erreur lors de l'installation: {e}")
|
|
return False
|
|
|
|
def start_server():
|
|
"""Démarre le serveur"""
|
|
print("🚀 Démarrage du serveur backend...")
|
|
try:
|
|
# Démarrage du serveur
|
|
subprocess.run([
|
|
"python3", "-m", "uvicorn",
|
|
"app:app",
|
|
"--host", "0.0.0.0",
|
|
"--port", "18000",
|
|
"--reload"
|
|
], check=True)
|
|
except KeyboardInterrupt:
|
|
print("\n🛑 Arrêt du serveur")
|
|
except Exception as e:
|
|
print(f"❌ Erreur lors du démarrage: {e}")
|
|
|
|
if __name__ == "__main__":
|
|
print("🎯 Démarrage de l'API 4NK IA Backend")
|
|
|
|
# Vérification des dépendances
|
|
try:
|
|
import fastapi
|
|
print("✅ FastAPI disponible")
|
|
except ImportError:
|
|
print("⚠️ FastAPI non disponible, tentative d'installation...")
|
|
if not install_requirements():
|
|
print("❌ Impossible d'installer les dépendances")
|
|
sys.exit(1)
|
|
|
|
# Démarrage du serveur
|
|
start_server()
|