| services: | |
| ollama: | |
| image: ollama/ollama:latest | |
| container_name: qwen3-router-ollama | |
| restart: unless-stopped | |
| ports: | |
| - "127.0.0.1:11435:11434" | |
| volumes: | |
| - qwen3_router_ollama:/root/.ollama | |
| - ./Modelfile:/models/Modelfile:ro | |
| environment: | |
| - OLLAMA_HOST=0.0.0.0:11434 | |
| gpus: all | |
| router-api: | |
| image: python:3.12-slim | |
| container_name: qwen3-router-api | |
| restart: unless-stopped | |
| depends_on: | |
| - ollama | |
| ports: | |
| - "127.0.0.1:8011:8011" | |
| volumes: | |
| - ./router_api/router_api.py:/app/router_api.py:ro | |
| - ./policies:/app/policies:ro | |
| environment: | |
| - OLLAMA_URL=http://ollama:11434 | |
| - OLLAMA_MODEL=qwen3-8b-korean-coding-router:latest | |
| - ROUTER_MODEL_ID=qwen3-8b-korean-coding-router | |
| command: ["python", "/app/router_api.py"] | |
| open-webui: | |
| image: ghcr.io/open-webui/open-webui:main | |
| container_name: qwen3-router-openwebui | |
| restart: unless-stopped | |
| depends_on: | |
| - ollama | |
| - router-api | |
| ports: | |
| - "127.0.0.1:3001:8080" | |
| volumes: | |
| - qwen3_router_openwebui:/app/backend/data | |
| environment: | |
| - OLLAMA_BASE_URL=http://ollama:11434 | |
| - OLLAMA_BASE_URLS=http://ollama:11434 | |
| - OPENAI_API_BASE_URL=http://router-api:8011/v1 | |
| - OPENAI_API_KEY=local | |
| - WEBUI_AUTH=False | |
| - USE_OLLAMA_DOCKER=false | |
| volumes: | |
| qwen3_router_ollama: | |
| qwen3_router_openwebui: | |