- ai: remove reranker service (moved to Serenity at 10.5.1.5:9787) - ai: add LiteLLM reranker proxy entry for Serenity - ai: configure OpenWebUI to use LiteLLM for reranking - monitoring: add Grafana + Prometheus stack - mesh-mqtt-observer: add new service - automation, documents, meshtastic: misc updates
131 lines
3.3 KiB
YAML
131 lines
3.3 KiB
YAML
networks:
|
|
ai-net:
|
|
driver: bridge
|
|
ai-services:
|
|
name: ai-services
|
|
ix-databases_shared-databases:
|
|
external: true
|
|
pangolin:
|
|
external: true
|
|
|
|
services:
|
|
ollama:
|
|
container_name: ollama
|
|
image: ollama/ollama:latest
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-net
|
|
- ai-services
|
|
ports:
|
|
- "11434:11434"
|
|
environment:
|
|
TZ: ${TZ}
|
|
NVIDIA_VISIBLE_DEVICES: all
|
|
NVIDIA_DRIVER_CAPABILITIES: compute,utility
|
|
volumes:
|
|
- /mnt/docker-ssd/docker/appdata/ollama:/root/.ollama
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: all
|
|
capabilities: [gpu]
|
|
|
|
openwebui:
|
|
container_name: openwebui
|
|
image: ghcr.io/open-webui/open-webui:main
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-net
|
|
- ai-services
|
|
- ix-databases_shared-databases
|
|
- pangolin
|
|
ports:
|
|
- "8282:8080"
|
|
environment:
|
|
TZ: ${TZ}
|
|
OLLAMA_BASE_URL: http://ollama:11434
|
|
WEBUI_SECRET_KEY: ${OPENWEBUI_SECRET_KEY}
|
|
DATABASE_URL: postgresql://openwebui:${OPENWEBUI_DB_PASS}@shared-postgres:5432/openwebui
|
|
ENABLE_SIGNUP: "true"
|
|
ENABLE_LOGIN_FORM: "true"
|
|
VECTOR_DB: qdrant
|
|
QDRANT_URI: http://qdrant:6333
|
|
RAG_RERANKING_MODEL: "reranker"
|
|
RAG_RERANKING_MODEL_AUTO_UPDATE: "false"
|
|
RAG_OPENAI_API_BASE_URL: "http://litellm:4000"
|
|
RAG_OPENAI_API_KEY: ${LITELLM_MASTER_KEY}
|
|
volumes:
|
|
- /mnt/docker-ssd/docker/appdata/openwebui:/app/backend/data
|
|
depends_on:
|
|
- ollama
|
|
healthcheck:
|
|
test: ["CMD-SHELL", "curl -sf http://127.0.0.1:8080/ || exit 1"]
|
|
interval: 30s
|
|
timeout: 10s
|
|
retries: 3
|
|
start_period: 60s
|
|
|
|
qdrant:
|
|
container_name: qdrant
|
|
image: qdrant/qdrant:v1.17.0
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-net
|
|
- ai-services
|
|
ports:
|
|
- "6333:6333"
|
|
- "6334:6334"
|
|
environment:
|
|
TZ: ${TZ}
|
|
QDRANT__SERVICE__GRPC_PORT: 6334
|
|
QDRANT__STORAGE__STORAGE_PATH: /qdrant/storage
|
|
QDRANT__STORAGE__SNAPSHOTS_PATH: /qdrant/snapshots
|
|
volumes:
|
|
- /mnt/docker-ssd/docker/appdata/qdrant/storage:/qdrant/storage
|
|
- /mnt/docker-ssd/docker/appdata/qdrant/snapshots:/qdrant/snapshots
|
|
|
|
litellm:
|
|
container_name: litellm
|
|
image: ghcr.io/berriai/litellm:main-latest
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-net
|
|
- ai-services
|
|
ports:
|
|
- "4000:4000"
|
|
environment:
|
|
TZ: ${TZ}
|
|
LITELLM_MASTER_KEY: ${LITELLM_MASTER_KEY}
|
|
volumes:
|
|
- /mnt/docker-ssd/docker/compose/ai/litellm/config.yaml:/app/config.yaml:ro
|
|
- /mnt/docker-ssd/docker/appdata/litellm:/app/data
|
|
command: ["--config", "/app/config.yaml", "--port", "4000"]
|
|
extra_hosts:
|
|
- "host.docker.internal:host-gateway"
|
|
|
|
whisper:
|
|
container_name: whisper
|
|
image: fedirz/faster-whisper-server:latest-cuda
|
|
restart: unless-stopped
|
|
networks:
|
|
- ai-net
|
|
- ai-services
|
|
ports:
|
|
- "8786:8000"
|
|
environment:
|
|
TZ: ${TZ}
|
|
WHISPER__MODEL: ${WHISPER_MODEL}
|
|
WHISPER__DEVICE: cuda
|
|
WHISPER__COMPUTE_TYPE: float16
|
|
volumes:
|
|
- /mnt/docker-ssd/docker/appdata/whisper:/root/.cache/huggingface
|
|
deploy:
|
|
resources:
|
|
reservations:
|
|
devices:
|
|
- driver: nvidia
|
|
count: 1
|
|
capabilities: [gpu]
|