-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathdocker-compose.yml
More file actions
103 lines (96 loc) · 2.97 KB
/
docker-compose.yml
File metadata and controls
103 lines (96 loc) · 2.97 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
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
version: "3.9"
# ============================================================
# RAG vs GraphRAG — Infrastructure Stack
# Services: Neo4j · Qdrant · llama-server
# ============================================================
networks:
ragnet:
driver: bridge
volumes:
neo4j_data:
neo4j_logs:
neo4j_plugins:
qdrant_data:
services:
# ----------------------------------------------------------
# Neo4j — Knowledge Graph Store
# ----------------------------------------------------------
neo4j:
image: neo4j:5.26-community
container_name: neo4j
restart: unless-stopped
ports:
- "7474:7474" # Neo4j Browser (HTTP)
- "7687:7687" # Bolt protocol (used by neo4j Python driver)
environment:
NEO4J_AUTH: "neo4j/carol123"
NEO4J_PLUGINS: '["apoc"]'
NEO4J_dbms_security_procedures_unrestricted: "apoc.*"
NEO4J_dbms_memory_heap_initial__size: "512m"
NEO4J_dbms_memory_heap_max__size: "2g"
NEO4J_dbms_memory_pagecache_size: "512m"
# Allow connections from anywhere (dev only)
NEO4J_dbms_connector_bolt_listen__address: "0.0.0.0:7687"
NEO4J_dbms_connector_http_listen__address: "0.0.0.0:7474"
volumes:
- neo4j_data:/data
- neo4j_logs:/logs
- neo4j_plugins:/plugins
networks:
- ragnet
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://localhost:7474 || exit 1"]
interval: 15s
timeout: 10s
retries: 5
start_period: 30s
# ----------------------------------------------------------
# Qdrant — Vector Database (Normal RAG)
# ----------------------------------------------------------
qdrant:
image: qdrant/qdrant:v1.14.0
container_name: qdrant
restart: unless-stopped
ports:
- "6333:6333" # REST API
- "6334:6334" # gRPC
environment:
QDRANT__LOG_LEVEL: INFO
volumes:
- qdrant_data:/qdrant/storage
networks:
- ragnet
healthcheck:
test: ["CMD-SHELL", "wget -qO- http://localhost:6333/healthz || exit 1"]
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
# # ----------------------------------------------------------
# # llama-server — LLM & Embedding Server
# # ----------------------------------------------------------
# llama-server:
# image: ghcr.io/ggml-org/llama.cpp:server
# container_name: llama_server
# restart: unless-stopped
# ports:
# - "8000:8000"
# volumes:
# # Mount the host directory containing the model
# - "C:/Users/DEEPANSHU/Desktop/workspace/models/lfm2.5 thinking:/models"
# command: >
# -m /models/granite-4.0-micro-Q5_0.gguf
# --host 0.0.0.0
# --port 8000
# --n-gpu-layers 0
# --embeddings
# --pooling mean
# -c 32768
# networks:
# - ragnet
# healthcheck:
# test: ["CMD-SHELL", "wget -qO- http://localhost:8000/health || exit 1"]
# interval: 30s
# timeout: 10s
# retries: 3
# start_period: 30s