version: '3.8' services: neo4j: image: neo4j:5 container_name: openclaw-neo4j ports: - "7474:7474" - "7687:7687" environment: - NEO4J_AUTH=neo4j/openclaw123 - NEO4J_PLUGINS=["apoc"] - NEO4J_server_memory_heap_initial__size=256m - NEO4J_server_memory_heap_max__size=512m volumes: - neo4j_data:/data - neo4j_logs:/logs restart: unless-stopped healthcheck: test: ["CMD-SHELL", "return cypher-shell -u neo4j -p openclaw123 'RETURN 1' 2>/dev/null || exit 1"] interval: 30s timeout: 10s retries: 5 openclaw: image: python:3.11-slim container_name: openclaw-app ports: - "8000:8000" environment: - NEO4J_URI=bolt://neo4j:7687 - NEO4J_USER=neo4j - NEO4J_PASSWORD=openclaw123 - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:-your-api-key-here} volumes: - ..:/app - ../openclaw_neo4j_demo.py:/app/openclaw_neo4j_demo.py working_dir: /app command: > sh -c "pip install --quiet neo4j openai && python openclaw_neo4j_demo.py" stdin_open: true tty: true depends_on: neo4j: condition: service_healthy restart: unless-stopped volumes: neo4j_data: neo4j_logs: