Files
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

193 lines
5.6 KiB
Markdown

# ⚙️ Variables d'Environnement
## Fichier `.env`
Ce fichier contient toutes les variables sensibles et de configuration. **Ne jamais le commiter !**
### Template
```bash
# ═══════════════════════════════════════════════════════════
# EFFI SERVER - Variables d'environnement
# ═══════════════════════════════════════════════════════════
# ═══════════════════════════════════════════════════════════
# 1. OPEN WEBUI
# ═══════════════════════════════════════════════════════════
WEBUI_SECRET_KEY=votre_cle_secrete_longue_et_aleatoire
# ═══════════════════════════════════════════════════════════
# 2. OLLAMA / PC GAMING
# ═══════════════════════════════════════════════════════════
OLLAMA_HOST=192.168.1.11
PC_GAMING_MAC=XX:XX:XX:XX:XX:XX
BROADCAST_IP=192.168.1.255
# ═══════════════════════════════════════════════════════════
# 3. COUCHDB (Obsidian LiveSync)
# ═══════════════════════════════════════════════════════════
COUCHDB_USER=master
COUCHDB_PASSWORD=votre_mot_de_passe_securise
# ═══════════════════════════════════════════════════════════
# 4. N8N (Automatisation)
# ═══════════════════════════════════════════════════════════
N8N_USER=master
N8N_PASSWORD=votre_mot_de_passe_securise
```
---
## Description des variables
### WEBUI_SECRET_KEY
**Utilisé par** : Open WebUI
**Description** : Clé secrète pour la gestion des sessions et le chiffrement.
**Génération** :
```bash
# Linux
openssl rand -hex 32
# ou
python3 -c "import secrets; print(secrets.token_hex(32))"
```
### OLLAMA_HOST
**Utilisé par** : wol-proxy
**Description** : IP du PC Gaming où tourne Ollama.
**Exemple** : `192.168.1.11`
### PC_GAMING_MAC
**Utilisé par** : wol-proxy
**Description** : Adresse MAC du PC Gaming pour le Wake-on-LAN.
**Format** : `XX:XX:XX:XX:XX:XX`
**Trouver l'adresse MAC** :
```bash
# Sur le PC Gaming
ip link show
# ou
ifconfig | grep ether
```
### BROADCAST_IP
**Utilisé par** : wol-proxy
**Description** : Adresse de broadcast du réseau local.
**Standard** : `192.168.1.255` (pour un réseau 192.168.1.0/24)
### COUCHDB_USER / COUCHDB_PASSWORD
**Utilisés par** : CouchDB
**Description** : Identifiants administrateur pour CouchDB.
**Note** : L'utilisateur par défaut dans les exemples est `master`.
### N8N_USER / N8N_PASSWORD
**Utilisés par** : n8n
**Description** : Identifiants pour l'accès à l'interface n8n (Basic Auth).
---
## Variables système
### TZ (TimeZone)
**Valeur par défaut** : `Europe/Paris`
**Utilisée par** : Tous les services
### HSA_OVERRIDE_GFX_VERSION
**Valeur** : `11.0.0`
**Utilisée par** : Services ROCm (speaches, openedai-speech)
**Description** : Force la version GFX pour la compatibilité ROCm.
---
## Configuration réseau
### Ports utilisés
| Service | Port | Protocole | Description |
|---------|------|-----------|-------------|
| Open WebUI | 3000 | TCP | Interface web |
| wol-proxy | 3011 | TCP | Proxy Ollama |
| Obsidian | 3100 | TCP | Interface Obsidian web |
| Qdrant HTTP | 6333 | TCP | API REST |
| Qdrant gRPC | 6334 | TCP | API gRPC |
| n8n | 5678 | TCP | Interface workflow |
| CouchDB | 5984 | TCP | Base de données |
| mcpo | 8000 | TCP | Proxy MCP |
| speaches | 8200 | TCP | STT API |
| openedai-speech | 8100 | TCP | TTS API |
| pipelines | 9099 | TCP | Middleware |
---
## Sécurité
### Bonnes pratiques
1. **Mots de passe** : Utiliser des mots de passe forts (>16 caractères, variété)
2. **Réseau** : Ne jamais exposer les ports directement sur Internet
3. **VPN** : Utiliser WireGuard ou Tailscale pour l'accès externe
4. **Backup** : Sauvegarder régulièrement le fichier `.env`
5. **Permissions** : Limiter l'accès au fichier `.env` (chmod 600)
### Commandes de sécurité
```bash
# Permissions restrictives
chmod 600 ~/effi/.env
# Vérifier les permissions
ls -la ~/effi/.env
# Backup chiffré
gpg -c ~/effi/.env
cp ~/effi/.env.gpg ~/backups/
```
---
## Dépannage environnement
### Variable non prise en compte
**Cause** : Le conteneur doit être recréé (pas juste redémarré)
**Solution** :
```bash
docker compose down
docker compose up -d
```
### Erreur "variable is not set"
**Cause** : Variable manquante dans le `.env`
**Solution** : Vérifier que toutes les variables requises sont définies
### Caractères spéciaux dans les mots de passe
**Attention** : Certains caractères peuvent poser problème dans les URLs (%, @, #, etc.)
**Solution** : Utiliser des mots de passe avec caractères alphanumériques uniquement, ou encoder les caractères spéciaux.