graphiti/mcp_server/docker/docker-compose-falkordb.yml
Daniel Chalef f1536faff8 refactor: Reorganize Docker Compose files by database type
- Rename docker-compose.yml to docker-compose-neo4j.yml for Neo4j setup
- Rename docker-compose-kuzu.yml to docker-compose.yml (making KuzuDB default)
- Create docker-compose-falkordb.yml for FalkorDB deployment
- Add dedicated config files for each database type:
  - config-docker-neo4j.yaml for Neo4j
  - config-docker-falkordb.yaml for FalkorDB
  - config-docker-kuzu.yaml for KuzuDB
- Create comprehensive Docker README with database comparison
- Update all compose files to use their respective config files

KuzuDB is now the default database for Docker deployments due to:
- No external dependencies required
- Lower resource usage
- Instant startup time
- Simpler deployment

🤖 Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>
2025-08-30 08:50:48 -07:00

58 lines
No EOL
2 KiB
YAML

services:
falkordb:
image: falkordb/falkordb:latest
ports:
- "6379:6379" # Redis/FalkorDB port
environment:
- FALKORDB_PASSWORD=${FALKORDB_PASSWORD:-}
volumes:
- falkordb_data:/data
healthcheck:
test: ["CMD", "redis-cli", "ping"]
interval: 10s
timeout: 5s
retries: 5
start_period: 10s
graphiti-mcp:
image: zepai/knowledge-graph-mcp:latest
build:
context: .
dockerfile: Dockerfile
env_file:
- path: .env
required: false # Makes the file optional. Default value is 'true'
depends_on:
falkordb:
condition: service_healthy
environment:
# Database configuration
- FALKORDB_URI=${FALKORDB_URI:-redis://falkordb:6379}
- FALKORDB_PASSWORD=${FALKORDB_PASSWORD:-}
- FALKORDB_DATABASE=${FALKORDB_DATABASE:-default_db}
# LLM provider configurations
- OPENAI_API_KEY=${OPENAI_API_KEY}
- ANTHROPIC_API_KEY=${ANTHROPIC_API_KEY}
- GOOGLE_API_KEY=${GOOGLE_API_KEY}
- GROQ_API_KEY=${GROQ_API_KEY}
- AZURE_OPENAI_API_KEY=${AZURE_OPENAI_API_KEY}
- AZURE_OPENAI_ENDPOINT=${AZURE_OPENAI_ENDPOINT}
- AZURE_OPENAI_DEPLOYMENT=${AZURE_OPENAI_DEPLOYMENT}
# Embedder provider configurations
- VOYAGE_API_KEY=${VOYAGE_API_KEY}
- AZURE_OPENAI_EMBEDDINGS_ENDPOINT=${AZURE_OPENAI_EMBEDDINGS_ENDPOINT}
- AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT=${AZURE_OPENAI_EMBEDDINGS_DEPLOYMENT}
# Application configuration
- GRAPHITI_GROUP_ID=${GRAPHITI_GROUP_ID:-main}
- SEMAPHORE_LIMIT=${SEMAPHORE_LIMIT:-10}
- CONFIG_PATH=/app/config/config.yaml
- PATH=/root/.local/bin:${PATH}
volumes:
- ../config/config-docker-falkordb.yaml:/app/config/config.yaml:ro
ports:
- "8000:8000" # Expose the MCP server via HTTP for SSE transport
command: ["uv", "run", "graphiti_mcp_server.py", "--transport", "sse", "--config", "/app/config/config.yaml"]
volumes:
falkordb_data:
driver: local