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

179 lines
3.8 KiB
Markdown

# 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 :
```bash
# 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
```bash
# Tester git.4nkweb.com
ssh -T git@git.4nkweb.com
```
#### 3. Installation des dépendances Python
Une fois pip installé :
```bash
# 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
```bash
# Démarrer les services
make up
# Vérifier le statut
make ps
# Voir les logs
make logs
```
### 🔧 Commandes utiles
#### Git
```bash
# Cloner un repository
git clone git@git.4nkweb.com:4NK/4NK_IA.git
# Configuration Git
git config --global --list
```
#### Docker
```bash
# Démarrer l'environnement de développement
make up
# Arrêter les services
make down
# Reconstruire les images
make build
# Nettoyer
make clean
```
#### Tests
```bash
# 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