feat(stack): bring back qdrant as OmniRoute's memory vector store
Bare service, no static config — wired up as a memory provider by hand in the OmniRoute dashboard. Not published to the host; only OmniRoute (same ai-stack network) talks to it. Also drops two stale comments left over from the OMNIROUTE_PORT:4000 removal. Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01Qx22CV9EUS3hGATucQav13
This commit is contained in:
@@ -36,7 +36,5 @@ The gateway also fronts SearXNG-backed web search — see `docs/research/litellm
|
||||
|
||||
## What's not here
|
||||
|
||||
Two features from earlier iterations of this stack were deliberately removed, not just left unfinished:
|
||||
|
||||
- **Open WebUI + Qdrant** — this stack has no chat UI; every client is a coding CLI. Removed rather than kept idle.
|
||||
- **Gateway-level knowledgebase/memory** (`litellm-pgvector`, `pgvector-db`, a dedicated embedding model) — removed as unwanted, unrelated to OmniRoute's own lack of parity with it (see issue #31's #34).
|
||||
- **Open WebUI** — this stack has no chat UI; every client is a coding CLI. Removed rather than kept idle.
|
||||
- **Gateway-level knowledgebase/memory** (`litellm-pgvector`, `pgvector-db`, a dedicated embedding model) — removed as unwanted, unrelated to OmniRoute's own lack of parity with it (see issue #31's #34). Superseded by OmniRoute's own memory feature, backed by `qdrant` (bare service — wired up as a memory provider by hand in the dashboard, no static config here).
|
||||
|
||||
+21
-9
@@ -56,6 +56,22 @@ services:
|
||||
curl -L --fail --create-dirs -o /models/${LLAMA_MODEL_FILE:-Qwen3.8-27B-UD-Q4_K_XL.gguf}
|
||||
https://huggingface.co/unsloth/Qwen3.8-27B-GGUF/resolve/main/${LLAMA_MODEL_FILE:-Qwen3.8-27B-UD-Q4_K_XL.gguf}
|
||||
|
||||
# Vector store for OmniRoute's memory feature — wired up in the OmniRoute
|
||||
# dashboard as a memory service, not via static config here. Not published
|
||||
# to the host: only OmniRoute (same ai-stack network) talks to it.
|
||||
qdrant:
|
||||
image: qdrant/qdrant:latest
|
||||
container_name: qdrant
|
||||
volumes:
|
||||
- qdrant-data:/qdrant/storage
|
||||
restart: unless-stopped
|
||||
networks: [ai-stack]
|
||||
healthcheck:
|
||||
test: ["CMD-SHELL", "bash -c 'exec 3<>/dev/tcp/localhost/6333'"]
|
||||
interval: 10s
|
||||
timeout: 5s
|
||||
retries: 5
|
||||
|
||||
# Replaces litellm — see issue #31 (wayfinder map) for the full migration
|
||||
# rationale/findings. No static config.yaml equivalent: provider routing
|
||||
# (llama-server, searxng-search) is registered once through the dashboard
|
||||
@@ -67,15 +83,15 @@ services:
|
||||
depends_on:
|
||||
llama-server:
|
||||
condition: service_started
|
||||
qdrant:
|
||||
condition: service_healthy
|
||||
volumes:
|
||||
- omniroute-data:/app/data
|
||||
env_file: .env
|
||||
environment:
|
||||
# Split-port mode: dashboard and API are fully separate ports (unlike
|
||||
# LiteLLM's single :4000 for both /v1 and /ui) — only API_PORT (via
|
||||
# the OMNIROUTE_PORT:4000 host mapping below) is published, so the
|
||||
# dashboard has no network route in from outside this container at
|
||||
# all. No NPM path-deny rule needed.
|
||||
# LiteLLM's single :4000 for both /v1 and /ui) — both published
|
||||
# directly below, unlike the old :4000-only host mapping.
|
||||
- API_HOST=0.0.0.0
|
||||
- API_PORT=${OMNIROUTE_API_PORT:-20129}
|
||||
- DASHBOARD_PORT=${OMNIROUTE_DASHBOARD_PORT:-20128}
|
||||
@@ -97,11 +113,6 @@ services:
|
||||
# network can't resolve search.home on its own.
|
||||
extra_hosts:
|
||||
- "search.home:${SEARXNG_LAN_IP}"
|
||||
# OMNIROUTE_PORT (host) is decoupled from API_PORT (container-internal,
|
||||
# left at omniroute's own default) via plain Docker port mapping — the
|
||||
# gateway needs to stay reachable at the same :4000 this stack has
|
||||
# always published (NPM/firewall already point there), without having
|
||||
# to also change omniroute's own internal port config to match.
|
||||
ports:
|
||||
- "${OMNIROUTE_API_PORT:-20129}:${OMNIROUTE_API_PORT:-20129}"
|
||||
- "${OMNIROUTE_DASHBOARD_PORT:-20128}:${OMNIROUTE_DASHBOARD_PORT:-20128}"
|
||||
@@ -153,3 +164,4 @@ networks:
|
||||
volumes:
|
||||
models:
|
||||
omniroute-data:
|
||||
qdrant-data:
|
||||
|
||||
Reference in New Issue
Block a user