4NK_IA_back/docs/installation-setup.md
root 5a8cc38eaa fix: Correction configuration MinIO et amélioration déploiement
- Correction de l'endpoint MinIO dans docker-compose.yml (suppression du protocole http://)
- Création automatique du fichier .env avec les bonnes configurations
- Ajout du script start-stack.sh pour faciliter le déploiement
- Suppression du fichier docker-compose.simple.yml
- Mise à jour de la documentation avec section de dépannage
- Mise à jour du numéro de version à 1.2.1

Résout le problème 'path in endpoint is not allowed' de MinIO
2025-09-10 21:29:25 +02:00

3.8 KiB

Configuration de l'environnement de développement 4NK_IA

Résumé de l'installation

Configuration Git et SSH terminée

Configuration Git

  • Utilisateur : ncantu
  • Email : ncantu@4nkweb.com
  • Branche par défaut : main
  • Configuration SSH automatique pour git.4nkweb.com

Clé SSH générée

  • Type : ED25519 (recommandé pour la sécurité)
  • Emplacement : ~/.ssh/id_ed25519
  • Clé publique : ``

Configuration SSH

Fichier ~/.ssh/config configuré pour :

  • git.4nkweb.com (serveur Gitea 4NK)

🔄 Installation des prérequis en cours

Packages système installés

  • Git (version 2.47.3)
  • OpenSSH Client
  • curl
  • wget
  • 🔄 Python3 (version 3.13.5)
  • 🔄 pip3 (installation en cours)
  • 🔄 Docker (installation en cours)

Dépendances Python identifiées

Le projet utilise plusieurs services avec des dépendances spécifiques :

Host API (FastAPI)

  • fastapi==0.115.0
  • uvicorn[standard]==0.30.6
  • pydantic==2.8.2
  • sqlalchemy==2.0.35
  • psycopg[binary]==3.2.1
  • minio==7.2.7
  • redis==5.0.7
  • opensearch-py==2.6.0
  • neo4j==5.23.1
  • celery[redis]==5.4.0

Worker (Celery)

  • celery[redis]==5.4.0
  • opencv-python-headless==4.10.0.84
  • pytesseract==0.3.13
  • numpy==2.0.1
  • pillow==10.4.0
  • pdfminer.six==20240706
  • ocrmypdf==15.4.0

Tests

  • pytest==7.4.4
  • pytest-cov==4.1.0
  • pytest-asyncio==0.23.2
  • httpx==0.27.0
  • locust==2.20.0

🐳 Services Docker

Le projet utilise Docker Compose avec les services suivants :

  • host-api : API FastAPI
  • worker : Worker Celery
  • postgres : Base de données PostgreSQL
  • redis : Cache et broker de messages
  • minio : Stockage d'objets
  • ollama : Modèles d'IA locaux
  • anythingllm : Interface d'IA

📋 Actions requises

1. Ajouter la clé SSH

Vous devez ajouter la clé publique SSH à vos comptes :

# Afficher la clé publique
cat ~/.ssh/id_ed25519.pub

Ajoutez cette clé dans :

  • git.4nkweb.com : Paramètres SSH de votre compte

2. Tester la connexion SSH

# Tester git.4nkweb.com
ssh -T git@git.4nkweb.com

3. Installation des dépendances Python

Une fois pip installé :

# Créer un environnement virtuel
python3 -m venv venv
source venv/bin/activate

# Installer les dépendances de test
pip install -r requirements-test.txt

# Installer les dépendances des services
pip install -r docker/host-api/requirements.txt
pip install -r docker/worker/requirements.txt

4. Configuration Docker

# Démarrer les services
make up

# Vérifier le statut
make ps

# Voir les logs
make logs

🔧 Commandes utiles

Git

# Cloner un repository
git clone git@git.4nkweb.com:4NK/4NK_IA.git

# Configuration Git
git config --global --list

Docker

# Démarrer l'environnement de développement
make up

# Arrêter les services
make down

# Reconstruire les images
make build

# Nettoyer
make clean

Tests

# Lancer les tests
python -m pytest

# Tests avec couverture
python -m pytest --cov

# Tests de charge
locust -f tests/load_test.py

📁 Structure du projet

4NK_IA/
├── docker/                 # Images Docker
│   ├── host-api/          # API FastAPI
│   └── worker/            # Worker Celery
├── services/              # Code source des services
├── tests/                 # Tests automatisés
├── docs/                  # Documentation
├── ops/                   # Scripts d'opération
├── infra/                 # Configuration infrastructure
└── requirements-test.txt  # Dépendances de test

🚀 Prochaines étapes

  1. Finaliser l'installation des prérequis
  2. Tester la connexion SSH
  3. Installer les dépendances Python
  4. Démarrer l'environnement Docker
  5. Exécuter les tests
  6. Configurer l'environnement de développement