feat: deploy SearXNG search engine with Valkey rate limiting

- Add SearXNG service on port 6060 (replaces old port 11112)
- Add Valkey for rate limiting (5/min, 60/hour, 500/day)
- Add Nginx reverse proxy with X-Real-IP and X-Forwarded-For headers
- Configure JSON format and French locale
- Add rate limiting configuration in limiter.toml
- Add Valkey configuration in valkey.conf
This commit is contained in:
Effi Server
2026-07-20 15:41:44 +00:00
parent 2e83369483
commit 14460d387b
5 changed files with 189 additions and 5 deletions
+30 -5
View File
@@ -6,20 +6,44 @@
services:
# ─────────────────────────────────────────────────────────
# 0. SEARXNG - Meta-search Engine (Web Search)
# → http://192.168.1.27:11112
# 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
# ─────────────────────────────────────────────────────────
searxng:
image: searxng/searxng:latest
container_name: effi-searxng
restart: unless-stopped
ports:
- "11112:8080"
- "6060:8080"
volumes:
- ./searxng-data:/etc/searxng:rw
- ./searxng-config/settings.yml:/etc/searxng/settings.yml:ro
environment:
- SEARXNG_BASE_URL=http://192.168.1.27:11112/
- SEARXNG_BASE_URL=http://192.168.1.27:6060/
- 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
@@ -265,3 +289,4 @@ volumes:
open-webui-data:
pipelines-data:
whisper-cache:
redis-data: