version: "3" services: backend: build: context: ./backend dockerfile: Dockerfile volumes: - ./backend:/code - ~/.config/gcloud:/root/.config/gcloud:ro env_file: - ./backend/.env environment: - KNN_MIN_SCORE=${KNN_MIN_SCORE-0.94} - IS_EMBEDDING=${IS_EMBEDDING-true} - GCP_LOG_METRICS_ENABLED=${GCP_LOG_METRICS_ENABLED-False} - UPDATE_GRAPH_CHUNKS_PROCESSED=${UPDATE_GRAPH_CHUNKS_PROCESSED-20} - ENTITY_EMBEDDING=${ENTITY_EMBEDDING-False} - GCS_FILE_CACHE=${GCS_FILE_CACHE-False} - LLM_MODEL_CONFIG_OPENAI_GPT_6_1_SOL=${LLM_MODEL_CONFIG_OPENAI_GPT_6_1_SOL-} - LLM_MODEL_CONFIG_OPENAI_GPT_6_LUNA=${LLM_MODEL_CONFIG_OPENAI_GPT_6_LUNA-} - LLM_MODEL_CONFIG_GEMINI_3_8_FLASH=${LLM_MODEL_CONFIG_GEMINI_3_8_FLASH-} - LLM_MODEL_CONFIG_DIFFBOT=${LLM_MODEL_CONFIG_DIFFBOT-} - LLM_MODEL_CONFIG_GROQ_LLAMA3_1_8B=${LLM_MODEL_CONFIG_GROQ_LLAMA3_1_8B-} - LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_SONNET=${LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_SONNET-} - LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_OPUS=${LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_OPUS-} - LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_HAIKU=${LLM_MODEL_CONFIG_ANTHROPIC_CLAUDE_5_5_HAIKU-} - LLM_MODEL_CONFIG_FIREWORKS_QWEN3_8=${LLM_MODEL_CONFIG_FIREWORKS_QWEN3_8-} - LLM_MODEL_CONFIG_FIREWORKS_GPT_OSS=${LLM_MODEL_CONFIG_FIREWORKS_GPT_OSS-} - LLM_MODEL_CONFIG_FIREWORKS_DEEPSEEK_V4_1_FLASH=${LLM_MODEL_CONFIG_FIREWORKS_DEEPSEEK_V4_1_FLASH-} - LLM_MODEL_CONFIG_FIREWORKS_KIMI_K3=${LLM_MODEL_CONFIG_FIREWORKS_KIMI_K3-} - LLM_MODEL_CONFIG_FIREWORKS_GLM_5_3_FLASH=${LLM_MODEL_CONFIG_FIREWORKS_GLM_5_3_FLASH-} - LLM_MODEL_CONFIG_LLAMA4_MAVERICK=${LLM_MODEL_CONFIG_LLAMA4_MAVERICK-} - LLM_MODEL_CONFIG_BEDROCK_NOVA_MICRO_V1=${LLM_MODEL_CONFIG_BEDROCK_NOVA_MICRO_V1-} - LLM_MODEL_CONFIG_BEDROCK_NOVA_LITE_V1=${LLM_MODEL_CONFIG_BEDROCK_NOVA_LITE_V1-} - LLM_MODEL_CONFIG_BEDROCK_NOVA_PRO_V1=${LLM_MODEL_CONFIG_BEDROCK_NOVA_PRO_V1-} - LLM_MODEL_CONFIG_OLLAMA_LLAMA3=${LLM_MODEL_CONFIG_OLLAMA_LLAMA3-} - OPENAI_API_KEY=${OPENAI_API_KEY-} - DIFFBOT_API_KEY=${DIFFBOT_API_KEY-} - EMBEDDING_MODEL=${EMBEDDING_MODEL-} - EMBEDDING_PROVIDER=${EMBEDDING_PROVIDER-} - MAX_TOKEN_CHUNK_SIZE=${MAX_TOKEN_CHUNK_SIZE-} - GOOGLE_APPLICATION_CREDENTIALS=/root/.config/gcloud/application_default_credentials.json - GOOGLE_CLOUD_PROJECT=${GOOGLE_CLOUD_PROJECT-} container_name: backend extra_hosts: - host.docker.internal:host-gateway ports: - "8000:8000" networks: - net frontend: depends_on: - backend build: context: ./frontend dockerfile: Dockerfile args: - VITE_BACKEND_API_URL=${VITE_BACKEND_API_URL-http://localhost:8000} - VITE_REACT_APP_SOURCES=${VITE_REACT_APP_SOURCES-local,wiki,s3} - VITE_GOOGLE_CLIENT_ID=${VITE_GOOGLE_CLIENT_ID-} - VITE_BLOOM_URL=${VITE_BLOOM_URL-https://workspace-preview.neo4j.io/workspace/explore?connectURL={CONNECT_URL}&search=Show+me+a+graph&featureGenAISuggestions=true&featureGenAISuggestionsInternal=true} - VITE_TIME_PER_PAGE=${VITE_TIME_PER_PAGE-50} - VITE_CHUNK_SIZE=${VITE_CHUNK_SIZE-5242880} - VITE_LARGE_FILE_SIZE=${VITE_LARGE_FILE_SIZE-5242880} - VITE_ENV=${VITE_ENV-DEV} - VITE_CHAT_MODES=${VITE_CHAT_MODES-} - VITE_BATCH_SIZE=${VITE_BATCH_SIZE-2} - VITE_LLM_MODELS=${VITE_LLM_MODELS-} - VITE_LLM_MODELS_PROD=${VITE_LLM_MODELS_PROD-gemini_3.8_flash,openai_gpt_6_luna,diffbot,anthropic_claude_5.5_haiku} - VITE_AUTH0_DOMAIN=${VITE_AUTH0_DOMAIN-} - VITE_AUTH0_CLIENT_ID=${VITE_AUTH0_CLIENT_ID-} - VITE_SKIP_AUTH=${VITE_SKIP_AUTH-true} - VITE_CHUNK_OVERLAP=${VITE_CHUNK_OVERLAP-} - VITE_TOKENS_PER_CHUNK=${VITE_TOKENS_PER_CHUNK-} - VITE_CHUNK_TO_COMBINE=${VITE_CHUNK_TO_COMBINE-} - DEPLOYMENT_ENV=local volumes: - ./frontend:/app - /app/node_modules env_file: - ./frontend/.env container_name: frontend ports: - "8080:8080" networks: - net networks: net: