Explorer
/opt/struktur/graphiti/docker-compose.yml
← Zurück ↓ Download
services:
  graphiti-neo4j:
    image: neo4j:5.26-community
    container_name: graphiti-neo4j
    restart: unless-stopped
    environment:
      NEO4J_AUTH: neo4j/graphiti2026
      NEO4J_PLUGINS: '["apoc"]'
      NEO4J_dbms_security_procedures_unrestricted: apoc.*
      NEO4J_dbms_memory_heap_initial__size: 256m
      NEO4J_dbms_memory_heap_max__size: 512m
    volumes:
    - graphiti_neo4j_data:/data
    - graphiti_neo4j_logs:/logs
    networks:
    - struktur-net
    healthcheck:
      test:
      - CMD
      - cypher-shell
      - -u
      - neo4j
      - -p
      - graphiti2026
      - RETURN 1
      interval: 30s
      timeout: 10s
      retries: 5
  graphiti-service:
    build: ./service
    container_name: graphiti-service
    restart: unless-stopped
    env_file:
    - /etc/graphiti/graphiti.env
    environment:
    - NEO4J_URI=bolt://graphiti-neo4j:7687
    - NEO4J_USER=neo4j
    - LLM_BASE_URL=https://openrouter.ai/api/v1
    - LLM_MODEL=qwen/qwen3.7-flash
    - EMBED_MODEL=sentence-transformers/paraphrase-multilingual-MiniLM-L12-v2
    - GRAPHITI_WORK_DEADLINE_SECONDS=900
    - GRAPHITI_REQUEST_DEADLINE_SECONDS=930
    - GRAPHITI_EDGE_RESOLUTION_TIMEOUT_SECONDS=300
    - GRAPHITI_HEARTBEAT_INTERVAL_SECONDS=12
    - PROVIDER_CONNECT_TIMEOUT_SECONDS=20
    - PROVIDER_READ_TIMEOUT_SECONDS=300
    - PROVIDER_CALL_TIMEOUT_SECONDS=300
    - PROVIDER_WRITE_TIMEOUT_SECONDS=20
    - PROVIDER_POOL_TIMEOUT_SECONDS=20
    - PROVIDER_MAX_RETRIES=0
    - OPENROUTER_PROVIDER=
    - OPENROUTER_ALLOW_FALLBACKS=true
    ports:
    - 127.0.0.1:8644:8000
    volumes:
    - /opt/struktur/graphiti/request-data:/var/lib/graphiti
    - /run/graphiti-control:/run/graphiti-control:ro
    depends_on:
      graphiti-neo4j:
        condition: service_healthy
    networks:
    - struktur-net
    healthcheck:
      test:
      - CMD
      - python3
      - -c
      - import urllib.request; urllib.request.urlopen('http://localhost:8000/health')
      interval: 30s
      timeout: 10s
      retries: 5
volumes:
  graphiti_neo4j_data: null
  graphiti_neo4j_logs: null
networks:
  struktur-net:
    external: true