version: "3.9" # LiteLLM — sovereign LLM router # Run: DEEPSEEK_API_KEY=... OPENROUTER_API_KEY=... GROQ_API_KEY=... docker compose up -d # # ACTIVE keys: openrouter, deepseek, groq (set as env vars when running) # PLACEHOLDER: gemini, zai, minimax, mistral, kimi (skipped until real keys) services: litellm: image: ghcr.io/berriai/litellm:main-stable container_name: rmi-litellm network_mode: rmi_network volumes: - ./litellm-config.yaml:/app/config.yaml ports: - "127.0.0.1:4000:4000" environment: - DEEPSEEK_API_KEY=${DEEPSEEK_API_KEY:-} - OPENROUTER_API_KEY=${OPENROUTER_API_KEY:-} - GROQ_API_KEY=${GROQ_API_KEY:-} - MISTRAL_API_KEY=${MISTRAL_API_KEY:-} - KIMI_API_KEY=${KIMI_API_KEY:-} command: ["--config", "/app/config.yaml", "--port", "4000", "--num_workers", "2"] restart: unless-stopped healthcheck: test: ["CMD", "curl", "-f", "http://localhost:4000/health/liveliness"] interval: 30s timeout: 5s retries: 3