refactor: remplacer les proxies Jean par un unique llm-proxy + WOL
- llm-proxy: 1 service, 4 routes (3011 Ollama, 3012 llama.cpp, 3015 STT, 3016 TTS) - Wake-on-LAN integre avec anti-spam (3 paquets magic, timeout 300s) - suppression de jean-router, jean-proxy, wol-proxy, litellm - OpenWebUI repointe vers le proxy (OpenAI 3012 + Ollama 3011 + STT 3015) - docs a jour (README, WOL)
This commit is contained in:
+24
-43
@@ -6,44 +6,20 @@
|
||||
services:
|
||||
|
||||
# ─────────────────────────────────────────────────────────
|
||||
# 0. VALKEY - Backend de rate limiting pour SearXNG
|
||||
# → Port interne uniquement (non exposé)
|
||||
# ─────────────────────────────────────────────────────────
|
||||
valkey:
|
||||
image: valkey/valkey:7-alpine
|
||||
container_name: effi-valkey
|
||||
restart: unless-stopped
|
||||
command: valkey-server /usr/local/etc/valkey/valkey.conf
|
||||
volumes:
|
||||
- ./searxng-config/valkey.conf:/usr/local/etc/valkey/valkey.conf:ro
|
||||
- valkey-data:/data/valkey-data
|
||||
networks:
|
||||
- effi-net
|
||||
|
||||
# ─────────────────────────────────────────────────────────
|
||||
# 1. SEARXNG - Meta-search Engine (API JSON)
|
||||
# → http://192.168.1.27:6060
|
||||
# 0. SEARXNG - Meta-search Engine (Web Search)
|
||||
# → http://192.168.1.27:11112
|
||||
# ─────────────────────────────────────────────────────────
|
||||
searxng:
|
||||
image: searxng/searxng:latest
|
||||
container_name: effi-searxng
|
||||
restart: unless-stopped
|
||||
ports:
|
||||
- "6060:8080"
|
||||
- "11112:8080"
|
||||
volumes:
|
||||
- ./searxng-config/settings.yml:/etc/searxng/settings.yml:ro
|
||||
- ./searxng-data:/etc/searxng:rw
|
||||
environment:
|
||||
- SEARXNG_BASE_URL=http://192.168.1.27:6060/
|
||||
- SEARXNG_BASE_URL=http://192.168.1.27:11112/
|
||||
- SEARXNG_SECRET=${SEARXNG_SECRET_KEY}
|
||||
- SEARXNG_SETTINGS_PATH=/etc/searxng/settings.yml
|
||||
healthcheck:
|
||||
test: ["CMD", "curl", "-f", "http://localhost:8080/healthz"]
|
||||
interval: 30s
|
||||
timeout: 10s
|
||||
retries: 3
|
||||
start_period: 30s
|
||||
depends_on:
|
||||
- valkey
|
||||
networks:
|
||||
- effi-net
|
||||
|
||||
@@ -61,40 +37,46 @@ services:
|
||||
- "3000:8080"
|
||||
environment:
|
||||
- OLLAMA_BASE_URL=http://host.docker.internal:3011
|
||||
- OPENAI_API_BASE_URL=http://host.docker.internal:3012/v1
|
||||
- OPENAI_API_KEY=any
|
||||
- ENABLE_OPENAI_API=True
|
||||
- WEBUI_SECRET_KEY=${WEBUI_SECRET_KEY}
|
||||
- VECTOR_DB=qdrant
|
||||
- QDRANT_URI=http://qdrant:6333
|
||||
- DEFAULT_LOCALE=fr-FR
|
||||
- ENABLE_MEMORIES=true
|
||||
- AUDIO_STT_ENGINE=openai
|
||||
- AUDIO_STT_OPENAI_API_BASE_URL=http://192.168.1.11:8200/v1
|
||||
- AUDIO_STT_OPENAI_API_BASE_URL=http://host.docker.internal:3015/v1
|
||||
- AUDIO_STT_OPENAI_API_KEY=anything
|
||||
- AUDIO_STT_MODEL=Systran/faster-whisper-large-v3
|
||||
volumes:
|
||||
- open-webui-data:/app/backend/data
|
||||
depends_on:
|
||||
- qdrant
|
||||
- wol-proxy
|
||||
- llm-proxy
|
||||
networks:
|
||||
- effi-net
|
||||
|
||||
# ─────────────────────────────────────────────────────────
|
||||
# 2. WOL PROXY - Réveil PC Gaming avant appel Ollama
|
||||
# → Proxy :3011 → PC Gaming :11434
|
||||
# 2. LLM PROXY - Proxy unique vers le PC Gaming + Wake-on-LAN
|
||||
# :3011 → Ollama (.11:11434)
|
||||
# :3012 → llama.cpp (.11:8080)
|
||||
# :3015 → STT (.11:8200)
|
||||
# :3016 → TTS (serveur local :8100, pas de WOL)
|
||||
# Si le PC est éteint, un paquet WoL est envoyé avant l'attente.
|
||||
# ─────────────────────────────────────────────────────────
|
||||
wol-proxy:
|
||||
build: ./wol-proxy
|
||||
container_name: wol-proxy
|
||||
llm-proxy:
|
||||
build: ./llm-proxy
|
||||
container_name: llm-proxy
|
||||
restart: unless-stopped
|
||||
network_mode: host
|
||||
environment:
|
||||
- TARGET_HOST=${OLLAMA_HOST}
|
||||
- TARGET_PORT=11434
|
||||
- TARGET_MAC=${PC_GAMING_MAC}
|
||||
- LISTEN_PORT=3011
|
||||
- WAKE_TIMEOUT=${WAKE_TIMEOUT:-180}
|
||||
- CHECK_INTERVAL=5
|
||||
- PC_HOST=${OLLAMA_HOST}
|
||||
- PC_MAC=${PC_GAMING_MAC}
|
||||
- BROADCAST_IP=${BROADCAST_IP}
|
||||
- WAKE_TIMEOUT=${WAKE_TIMEOUT:-300}
|
||||
- SERVICE_TIMEOUT=120
|
||||
- CHECK_INTERVAL=5
|
||||
|
||||
# ─────────────────────────────────────────────────────────
|
||||
# 3. MCPO - Proxy outils MCP (Obsidian, etc.)
|
||||
@@ -289,4 +271,3 @@ volumes:
|
||||
open-webui-data:
|
||||
pipelines-data:
|
||||
whisper-cache:
|
||||
redis-data:
|
||||
|
||||
Reference in New Issue
Block a user