- Route virtuelle :3012 -> instance active (8080 Q4_K_M / 8081 IQ4_XS), etat persiste - Alias modele qwen3.8-27b : reecriture id reel <-> alias (v1/models, chat, completions, embeddings, streaming SSE) -> switch transparent pour tous les harnais - UI de gestion :3017 (statut, Activer, Tester) en page unique sans dependance ajoutee - Fail-fast 503 (20s) si instance active arreteee, sans spam WOL
7.3 KiB
🔌 Wake On LAN (WOL) et Démarrage Automatique
Guide pour s'assurer que tous les services Effi démarrent automatiquement après un WOL.
📋 Architecture des services sur folzo-Corp
| Service | Port | Docker | Dépendance WOL |
|---|---|---|---|
| llama.cpp (instance A — qwen3.8-27b Q4_K_M) | 8080 | Native (systemd) | Oui |
| llama.cpp (instance B — qwen3.8-27b-iq4xs) | 8081 | Native (systemd) | Oui |
| Ollama | 11434 | ✅ | Oui |
| Effi-STT | 8200 | ✅ | Oui |
| ComfyUI | 8188 | ✅ | Oui |
Note : le TTS (openedai-speech, port 8100) tourne désormais sur l'effi-server, pas sur folzo-Corp. Il n'a donc pas besoin de WOL.
Note VRAM : les 2 instances llama.cpp partagent les 32 Go de VRAM. Une seule doit tourner à la fois : démarre l'instance voulue sur le PC, et active-la dans l'UI du proxy (http://192.168.1.27:3017).
Le réveil est géré automatiquement par llm-proxy (effi-server) : au premier appel
vers une cible éteinte, il envoie 3 paquets magic (MAC du PC) puis attend que le service
soit prêt. Aucun script manuel nécessaire.
🚀 Configuration du démarrage automatique
1. Activer Docker au boot
Sur folzo-Corp, exécutez une fois :
sudo systemctl enable docker
Cela garantit que Docker démarre automatiquement à chaque boot.
2. Vérifier la politique de redémarrage des conteneurs
Tous les services Docker doivent avoir restart: unless-stopped dans leur docker-compose.yml.
Vérification :
# Vérifier les politiques de redémarrage
sudo docker inspect -f '{{.Name}} - {{.HostConfig.RestartPolicy.Name}}' $(sudo docker ps -aq)
Résultat attendu :
/ollama - unless-stopped
/comfyui - unless-stopped
/effi-stt - unless-stopped
/openedai-speech - unless-stopped
Si un conteneur n'a pas unless-stopped, modifiez son docker-compose.yml et redémarrez-le.
⚡ Procédure après un WOL
Méthode 1 : Script automatique (recommandé)
Après que folzo-Corp soit réveillé par WOL, exécutez sur le PC :
~/Documents/OpenCode/Projets/Effi/scripts/start-all-services.sh
Ce script va :
- Démarrer Docker si nécessaire
- Démarrer tous les conteneurs
- Vérifier que tout répond correctement
Méthode 2 : Vérification rapide
Pour vérifier que tout fonctionne :
~/Documents/OpenCode/Projets/Effi/scripts/check-services.sh
Méthode 3 : Démarrage manuel
Si vous préférez démarrer un service spécifique :
# Ollama
cd ~ && sudo docker compose up -d
# ComfyUI
cd ~/Documents/OpenCode/Projets/Effi/comfyui && sudo docker compose up -d
# Effi-STT
cd ~/Documents/OpenCode/Projets/Effi/effi-stt && sudo docker compose up -d
# openedai-speech
cd ~/openedai-speech && sudo docker compose up -d
🔄 Créer un démarrage automatique complet
Option A : Script au boot (systemd)
Créer un service systemd qui démarre tous les conteneurs :
# Créer le fichier de service
sudo tee /etc/systemd/system/effi-services.service > /dev/null <<EOF
[Unit]
Description=Effi Services (Ollama, ComfyUI, STT, TTS)
After=docker.service
Requires=docker.service
[Service]
Type=oneshot
User=folzo
Group=folzo
ExecStart=/home/folzo/Documents/OpenCode/Projets/Effi/scripts/start-all-services.sh
RemainAfterExit=yes
[Install]
WantedBy=multi-user.target
EOF
# Activer le service
sudo systemctl daemon-reload
sudo systemctl enable effi-services.service
Avantage : Tout démarre automatiquement au boot, sans intervention.
Option B : Script de vérification périodique
Pour s'assurer que les services restent en ligne :
# Ajouter au crontab
crontab -e
# Ajouter cette ligne pour vérifier toutes les 5 minutes
*/5 * * * * /home/folzo/Documents/OpenCode/Projets/Effi/scripts/check-services.sh > /dev/null 2>&1
🧪 Test du WOL complet
Procédure de test
- Éteindre folzo-Corp normalement
- Attendre 10 secondes
- Envoyer le paquet WOL depuis effi-server :
wakeonlan XX:XX:XX:XX:XX:XX # MAC de folzo-Corp - Attendre le boot (~30-60 secondes)
- Vérifier les services :
ssh folzo@192.168.1.11 "~/Documents/OpenCode/Projets/Effi/scripts/check-services.sh" - Tester une génération d'image via OpenWebUI
Si un service ne démarre pas
# Voir les logs d'un service
sudo docker logs comfyui
# Redémarrer un service spécifique
sudo docker restart comfyui
# Vérifier l'état de tous les conteneurs
sudo docker ps -a
📊 Monitoring
Vérifier l'état des services
# Tous les services
sudo docker ps --format "table {{.Names}}\t{{.Status}}\t{{.Ports}}"
# Utilisation GPU
rocm-smi
# Espace disque
df -h
Alertes
Si un service est down, vous pouvez créer une alerte simple :
# Dans le crontab
crontab -e
# Vérifier toutes les minutes et envoyer notification si KO
* * * * * /home/folzo/Documents/OpenCode/Projets/Effi/scripts/check-services.sh || echo "Services Effi down" | mail -s "Alerte Effi" votre@email.com
🐛 Dépannage
Problème : Docker ne démarre pas au boot
# Vérifier l'état
sudo systemctl status docker
# Activer au boot
sudo systemctl enable docker
# Démarrer manuellement
sudo systemctl start docker
Problème : Les conteneurs ne démarrent pas
# Vérifier la politique de redémarrage
sudo docker inspect -f '{{.Name}} - {{.HostConfig.RestartPolicy.Name}}' comfyui
# Si ce n'est pas "unless-stopped", le corriger
cd ~/Documents/OpenCode/Projets/Effi/comfyui
sudo docker compose up -d
Problème : ComfyUI ne répond pas après WOL
Cela arrive si ROCm n'est pas prêt. Solution :
# Attendre que le GPU soit prêt
sleep 10
# Redémarrer ComfyUI
sudo docker restart comfyui
# Vérifier les logs
sudo docker logs comfyui | tail -20
Problème : Timeout après WOL
Si les services mettent trop de temps à répondre après un WOL :
- Augmenter le délai d'attente dans le script
- Vérifier les performances du disque (peut-être en veille)
- Désactiver la veille du disque :
sudo hdparm -S 0 /dev/sda # Désactiver la veille
✅ Checklist post-WOL
Après chaque WOL, vérifiez :
- Docker est démarré :
sudo systemctl is-active docker - Ollama répond :
curl http://localhost:11434 - ComfyUI répond :
curl http://localhost:8188 - Effi-STT répond :
curl http://localhost:8200/health - openedai-speech répond :
curl http://localhost:8100/health - GPU disponible :
rocm-smi - Test de génération d'image via OpenWebUI
📝 Résumé des commandes utiles
| Action | Commande |
|---|---|
| Tout démarrer | ~/Documents/OpenCode/Projets/Effi/scripts/start-all-services.sh |
| Vérifier les services | ~/Documents/OpenCode/Projets/Effi/scripts/check-services.sh |
| Activer démarrage auto | sudo systemctl enable docker |
| Voir les logs | sudo docker logs <nom> |
| Redémarrer un service | sudo docker restart <nom> |
| Voir tous les conteneurs | sudo docker ps -a |
| État du GPU | rocm-smi |
Note : Pour une expérience optimale, configurez le service systemd (Option A) pour un démarrage 100% automatique sans intervention.
Document créé le 6 avril 2026