Files
Effi/docs/03-guides/installation.md
Folzo d1e12cff60 Initial commit: Documentation Effi v1.0
- Structure complète du projet
- Docker compose de production
- Documentation organisée par thèmes
- Guides d'installation et configuration
- Section dépannage détaillée
- Journal historique
2026-04-04 08:45:59 +02:00

336 lines
6.6 KiB
Markdown

# 📦 Guide d'Installation
## Vue d'ensemble
Ce guide décrit l'installation complète de l'infrastructure Effi, du serveur Ubuntu au premier démarrage des services.
**Temps estimé** : 2-3 heures
**Difficulté** : Intermédiaire
---
## Prérequis
### Matériel
**effi-server (serveur principal)** :
- CPU : Intel J5040 ou équivalent (4 cœurs)
- RAM : 8 GB minimum
- Stockage : 50 GB SSD minimum
- OS : Ubuntu Server 22.04 LTS
**folzo-Corp (PC Gaming)** :
- CPU : AMD Ryzen 5 ou supérieur
- RAM : 32 GB recommandé
- GPU : AMD RX 7800 XT (16 GB VRAM)
- OS : Bazzite (Fedora) ou Ubuntu 22.04
### Logiciels requis
**Sur effi-server** :
- Docker Engine 24.x+
- Docker Compose v2+
- curl, git
**Sur folzo-Corp** :
- Ollama
- ROCm 6.3.4 (pour AMD GPU)
- Docker Engine
---
## Étape 1 : Préparation du serveur (effi-server)
### 1.1 Installation de Docker
```bash
# Mettre à jour le système
sudo apt update && sudo apt upgrade -y
# Installer les dépendances
sudo apt install -y ca-certificates curl gnupg lsb-release
# Ajouter la clé GPG officielle de Docker
sudo mkdir -p /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
# Ajouter le repository Docker
echo \
"deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
$(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
# Installer Docker
sudo apt update
sudo apt install -y docker-ce docker-ce-cli containerd.io docker-compose-plugin
# Vérifier l'installation
sudo docker --version
sudo docker compose version
# Ajouter l'utilisateur au groupe docker (déconnexion/reconnexion nécessaire)
sudo usermod -aG docker $USER
```
### 1.2 Création de la structure de dossiers
```bash
# Créer le dossier principal
mkdir -p ~/effi
cd ~/effi
# Créer les sous-dossiers
mkdir -p mcpo-config
mkdir -p qdrant-storage
mkdir -p couchdb-data
mkdir -p n8n-data
mkdir -p wol-proxy
mkdir -p tts-voices
mkdir -p tts-config
mkdir -p obsidian-vault
```
---
## Étape 2 : Configuration du PC Gaming (folzo-Corp)
### 2.1 Installation d'Ollama
```bash
# Installer Ollama
curl -fsSL https://ollama.com/install.sh | sh
# Vérifier l'installation
ollama --version
# Télécharger les modèles nécessaires
ollama pull qwen2.5:14b
ollama pull qwen2.5:3b
ollama pull bge-m3
# Vérifier les modèles installés
ollama list
```
### 2.2 Configuration de Ollama pour le réseau
```bash
# Créer le fichier de service systemd
sudo systemctl edit ollama.service
```
Ajouter :
```ini
[Service]
Environment="OLLAMA_HOST=0.0.0.0:11434"
```
```bash
# Redémarrer Ollama
sudo systemctl daemon-reload
sudo systemctl restart ollama
# Vérifier que Ollama écoute sur toutes les interfaces
sudo ss -tlnp | grep 11434
```
### 2.3 Installation de ROCm (pour AMD GPU)
```bash
# Sur Bazzite/Fedora
sudo dnf install -y rocm-dev rocm-smi
# Vérifier l'installation
rocm-smi --showproductname
rocminfo | grep gfx
```
### 2.4 Configuration des services Docker sur folzo-Corp
Créer les dossiers :
```bash
mkdir -p ~/speaches
mkdir -p ~/openedai-speech/tts-voices
mkdir -p ~/openedai-speech/tts-config
```
---
## Étape 3 : Configuration de la mémoire persistante
Voir le guide détaillé dans [Configuration Mémoire](./memoire.md).
---
## Étape 4 : Premier démarrage
### 4.1 Configuration du fichier .env
```bash
cd ~/effi
cp .env.example .env
nano .env
```
Remplir toutes les variables :
- `WEBUI_SECRET_KEY` : Générer une clé aléatoire
- `OLLAMA_HOST` : IP de folzo-Corp
- `PC_GAMING_MAC` : Adresse MAC de folzo-Corp
- `COUCHDB_USER/PASSWORD` : Identifiants CouchDB
- `N8N_USER/PASSWORD` : Identifiants n8n
### 4.2 Initialisation de CouchDB
```bash
# Démarrer uniquement CouchDB
docker compose up -d couchdb
# Attendre 10 secondes
sleep 10
# Créer les bases nécessaires
curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/_users
curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/_replicator
curl -X PUT http://master:VOTRE_MOT_DE_PASSE@192.168.1.27:5984/obsidian-livesync
```
### 4.3 Démarrage complet
```bash
# Démarrer tous les services
docker compose up -d
# Vérifier l'état
docker compose ps
# Voir les logs
docker compose logs -f
```
---
## Étape 5 : Configuration STT/TTS sur folzo-Corp
### 5.1 Build de speaches (ROCm)
```bash
cd ~
git clone https://github.com/speaches-ai/speaches.git
cd speaches/src
# Modifier pour gfx1100
sed -i 's/gfx1101/gfx1100/g' Dockerfile.rocm-ct2
# Build (prend ~50 min)
docker build -f Dockerfile.rocm-ct2 -t speaches:rocm-ct2 .
```
### 5.2 Téléchargement des voix TTS
```bash
cd ~/openedai-speech/tts-voices
# Voix française Piper
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/fr/fr_FR/upmc/medium/fr_FR-upmc-medium.onnx
wget https://huggingface.co/rhasspy/piper-voices/resolve/main/fr/fr_FR/upmc/medium/fr_FR-upmc-medium.onnx.json
# Configuration
mkdir -p ../tts-config
cat > ../tts-config/config.yaml << 'EOF'
tts-1:
alloy:
model: voices/fr_FR-upmc-medium.onnx
speaker: 0
EOF
```
### 5.3 Démarrage des services audio
```bash
cd ~/speaches
docker compose up -d
cd ~/openedai-speech
docker compose up -d
```
---
## Étape 6 : Vérification finale
### 6.1 Test des services
```bash
# Test OpenWebUI
curl http://192.168.1.27:3000
# Test Ollama
curl http://192.168.1.11:11434/api/tags
# Test STT
curl http://192.168.1.11:8200/v1/models
# Test TTS
curl http://192.168.1.11:8100/v1/models
# Test CouchDB
curl http://192.168.1.27:5984
# Test n8n
curl http://192.168.1.27:5678
```
### 6.2 Accès aux interfaces
| Service | URL |
|---------|-----|
| Open WebUI | http://192.168.1.27:3000 |
| n8n | http://192.168.1.27:5678 |
| CouchDB | http://192.168.1.27:5984/_utils |
| Qdrant | http://192.168.1.27:6333 |
---
## Prochaines étapes
Après l'installation, suivre le guide de [Première Configuration](./premiere-config.md) pour :
- Créer le compte admin
- Configurer les connexions
- Installer les filtres de mémoire
- Tester le pipeline vocal
---
## Dépannage initial
### Les conteneurs ne démarrent pas
```bash
# Voir les logs d'erreur
docker compose logs [nom-du-service]
# Vérifier les ports utilisés
sudo ss -tlnp
# Vérifier les variables d'environnement
docker compose config
```
### Erreur de permissions
```bash
# Fixer les permissions des volumes
sudo chown -R $USER:$USER ~/effi/*-data
sudo chown -R $USER:$USER ~/effi/*-storage
```
### Wake-on-LAN ne fonctionne pas
```bash
# Vérifier que wol-proxy est configuré
docker logs wol-proxy
# Tester le WoL manuellement
sudo apt install wakeonlan
wakeonlan XX:XX:XX:XX:XX:XX # MAC de folzo-Corp
```