Files
LiveFlow/docker-compose.unraid.yml
T
Claude de817e189e Mises à jour automatiques : image publiée sur ghcr.io via GitHub Actions + Watchtower
- Workflow build-image.yml : construit et pousse ghcr.io/r0m1k3/liveflow à
  chaque modification de app/
- Compose Unraid : image préconstruite au lieu du build local, service
  watchtower scopé par label pour redéployer l'app automatiquement

https://claude.ai/code/session_01YHMp3EKzr4s6o8w1ygxuUe
2026-06-12 09:04:07 +00:00

65 lines
2.2 KiB
YAML

# Compose adapté à Unraid (plugin "Docker Compose Manager").
#
# Prérequis : plugin "Nvidia Driver" (Community Applications).
#
# L'image de l'app est construite et publiée automatiquement par GitHub
# Actions à chaque mise à jour du code : plus besoin du dépôt sur le serveur.
# Le service watchtower inclus met à jour l'app automatiquement (il ne touche
# qu'aux conteneurs portant le label watchtower.enable).
#
# Accès : https://<ip-unraid>:8443 (certificat auto-signé), ou via votre
# reverse proxy avec LIVEFLOW_TLS=off (scheme http, websockets activés).
services:
app:
image: ghcr.io/r0m1k3/liveflow:latest
container_name: liveflow-app
restart: unless-stopped
ports:
- "8443:8000"
environment:
# ← IP (ou nom d'hôte) de votre serveur Unraid, pour le certificat HTTPS
- LIVEFLOW_HOST=192.168.1.16
# "off" si un reverse proxy (Nginx Proxy Manager, SWAG...) gère déjà le
# HTTPS : l'app sert alors du HTTP simple sur le port 8443.
- LIVEFLOW_TLS=off
- ASR_BASE_URL=http://asr:8000/v1
- ASR_MODEL=Qwen/Qwen3-ASR-1.7B
- ASR_API_KEY=sk-local
# Code langue ISO ("fr", "en"...) ou vide pour la détection automatique
- ASR_LANGUAGE=fr
- DB_PATH=/data/liveflow.db
volumes:
- /mnt/user/appdata/liveflow/data:/data
labels:
- com.centurylinklabs.watchtower.enable=true
depends_on:
- asr
asr:
image: vllm/vllm-openai:latest
container_name: liveflow-asr
restart: unless-stopped
command: >-
--model Qwen/Qwen3-ASR-1.7B
--max-model-len 8192
--gpu-memory-utilization 0.70
runtime: nvidia
environment:
- NVIDIA_VISIBLE_DEVICES=all
- NVIDIA_DRIVER_CAPABILITIES=compute,utility
volumes:
- /mnt/user/appdata/liveflow/hf-cache:/root/.cache/huggingface
ipc: host
# Met à jour automatiquement liveflow-app quand une nouvelle image est
# publiée (vérification toutes les heures). Supprimez ce service si un
# Watchtower tourne déjà sur votre serveur.
watchtower:
image: containrrr/watchtower:latest
container_name: liveflow-watchtower
restart: unless-stopped
volumes:
- /var/run/docker.sock:/var/run/docker.sock
command: --label-enable --cleanup --interval 3600