-
Notifications
You must be signed in to change notification settings - Fork 47
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
76 lines (74 loc) · 3.07 KB
/
Copy pathdocker-compose.yml
File metadata and controls
76 lines (74 loc) · 3.07 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
services:
qdrant:
image: qdrant/qdrant:v1.13.4
restart: unless-stopped
ports:
- "${QDRANT_BIND_ADDRESS:-127.0.0.1}:${QDRANT_HTTP_PORT:-6333}:6333"
- "${QDRANT_BIND_ADDRESS:-127.0.0.1}:${QDRANT_GRPC_PORT:-6334}:6334"
environment:
QDRANT__SERVICE__API_KEY: ${QDRANT_API_KEY:-}
volumes:
- ${QDRANT_STORAGE_PATH:-./qdrant_storage}:/qdrant/storage
backend:
build:
context: ./backend
dockerfile: ../docker/backend.Dockerfile
restart: unless-stopped
depends_on:
- qdrant
extra_hosts:
- "host.docker.internal:host-gateway"
environment:
PORT: ${PORT:-8080}
UPLOAD_DIR: ${UPLOAD_DIR:-/app/data/uploads}
MAX_UPLOAD_BYTES: ${MAX_UPLOAD_BYTES:-26214400}
STATE_FILE: ${STATE_FILE:-/app/data/app-state.json}
CHAT_HISTORY_FILE: ${CHAT_HISTORY_FILE:-/app/data/chat-history.db}
QDRANT_URL: ${QDRANT_URL:-http://qdrant:6333}
QDRANT_API_KEY: ${QDRANT_API_KEY:-}
QDRANT_COLLECTION_PREFIX: ${QDRANT_COLLECTION_PREFIX:-kb_}
QDRANT_VECTOR_SIZE: ${QDRANT_VECTOR_SIZE:-768}
QDRANT_DISTANCE: ${QDRANT_DISTANCE:-Cosine}
QDRANT_TIMEOUT_SECONDS: ${QDRANT_TIMEOUT_SECONDS:-5}
OLLAMA_BASE_URL: ${OLLAMA_BASE_URL:-http://host.docker.internal:11434}
ENABLE_AUTH: ${ENABLE_AUTH:-false}
AUTH_USERNAME: ${AUTH_USERNAME:-root}
AUTH_PASSWORD: ${AUTH_PASSWORD:-}
AUTH_SETUP_TOKEN: ${AUTH_SETUP_TOKEN:-}
AUTH_RESET_TOKEN: ${AUTH_RESET_TOKEN:-}
AUTH_RESET_PASSWORD: ${AUTH_RESET_PASSWORD:-}
JWT_SECRET: ${JWT_SECRET:-}
ENABLE_HYBRID_SEARCH: ${ENABLE_HYBRID_SEARCH:-false}
ENABLE_SEMANTIC_RERANKER: ${ENABLE_SEMANTIC_RERANKER:-false}
ENABLE_QUERY_REWRITE: ${ENABLE_QUERY_REWRITE:-false}
ENABLE_SEMANTIC_CACHE: ${ENABLE_SEMANTIC_CACHE:-false}
ENABLE_CONTEXT_COMPRESSION: ${ENABLE_CONTEXT_COMPRESSION:-false}
RETRIEVAL_TOPK_DOCUMENT: ${RETRIEVAL_TOPK_DOCUMENT:-6}
RETRIEVAL_CANDIDATE_TOPK_DOCUMENT: ${RETRIEVAL_CANDIDATE_TOPK_DOCUMENT:-12}
RETRIEVAL_TOPK_KNOWLEDGE_BASE: ${RETRIEVAL_TOPK_KNOWLEDGE_BASE:-10}
RETRIEVAL_CANDIDATE_TOPK_ALL_DOCS: ${RETRIEVAL_CANDIDATE_TOPK_ALL_DOCS:-32}
RETRIEVAL_MAX_CHUNKS_PER_DOCUMENT: ${RETRIEVAL_MAX_CHUNKS_PER_DOCUMENT:-2}
RETRIEVAL_MAX_CONTEXT_CHARS: ${RETRIEVAL_MAX_CONTEXT_CHARS:-2400}
RETRIEVAL_ENABLE_AUTO_EXPAND: ${RETRIEVAL_ENABLE_AUTO_EXPAND:-false}
ENABLE_MCP: ${ENABLE_MCP:-false}
ENABLE_MCP_LEGACY_TOKEN: ${ENABLE_MCP_LEGACY_TOKEN:-false}
MCP_BASE_PATH: ${MCP_BASE_PATH:-/mcp}
MCP_REQUEST_TIMEOUT_SECONDS: ${MCP_REQUEST_TIMEOUT_SECONDS:-15}
MCP_REQUESTS_PER_MINUTE: ${MCP_REQUESTS_PER_MINUTE:-120}
ports:
- "${PORT:-8080}:${PORT:-8080}"
volumes:
- ./backend/data:/app/data
frontend:
build:
context: .
dockerfile: ./docker/frontend.Dockerfile
args:
VITE_APP_VERSION: ${VITE_APP_VERSION:-}
restart: unless-stopped
depends_on:
- backend
environment:
VITE_API_BASE_URL: ${VITE_API_BASE_URL:-http://localhost:8080}
ports:
- "${FRONTEND_PORT:-4173}:4173"