91 lines
2.6 KiB
YAML
91 lines
2.6 KiB
YAML
name: nuc-ai-core
|
|
|
|
include:
|
|
# - path: ./lobehub.yml # decommissioned 2026-05-26
|
|
- path: ./open-terminal.yml
|
|
- path: ./qdrant.yml
|
|
- path: ./tei.yml
|
|
- path: ./nomic.yml
|
|
- path: ./searxng.yaml
|
|
#- path: ./mcp-tools.yaml # All your MCP servers (Nextcloud, etc.)
|
|
# SAIA image/STT/edit now handled natively by LiteLLM (saia-* models in
|
|
# litellm-config/config.yaml); Docling moved to the docling-mcp stack.
|
|
|
|
services:
|
|
# --- LiteLLM Gateway ---
|
|
# --- LiteLLM (DECOMMISSIONED 2026-05-26 — stopped; Bifrost replaced it) ---
|
|
# litellm:
|
|
# image: ghcr.io/berriai/litellm:main-latest
|
|
# container_name: litellm
|
|
# volumes:
|
|
# - ./litellm-config:/app/config
|
|
# env_file: .env
|
|
# ports:
|
|
# - "14000:4000"
|
|
# networks:
|
|
# - ai-internal
|
|
# - shared_backend
|
|
# command: ["--config", "/app/config/config.yaml"]
|
|
# labels:
|
|
# - "homepage.group=ai"
|
|
# - "homepage.name=LiteLLM"
|
|
# - "homepage.icon=sh-litellm"
|
|
# - "homepage.href=https://ai.nuclide.systems"
|
|
# - "homepage.instance.internal.href=http://192.168.1.40:14000"
|
|
# - "homepage.instance.public.href=https://ai.nuclide.systems"
|
|
# healthcheck:
|
|
# test: ["CMD", "python", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:4000/health/liveliness')"]
|
|
# interval: 10s
|
|
# timeout: 5s
|
|
# retries: 10
|
|
# start_period: 30s
|
|
|
|
# syncstack:
|
|
# build:
|
|
# context: .
|
|
# dockerfile: Dockerfile.syncstack
|
|
# env_file: .env
|
|
# volumes:
|
|
# - ./.env:/app/.env
|
|
# - .:/project
|
|
# - /var/run/docker.sock:/var/run/docker.sock
|
|
# networks:
|
|
# - ai-internal
|
|
# depends_on:
|
|
# litellm:
|
|
# condition: service_healthy
|
|
# lobe:
|
|
# condition: service_healthy
|
|
# restart: "no"
|
|
#
|
|
claude-max-bridge:
|
|
build:
|
|
context: /opt/stacks/ai/claude-max-bridge
|
|
dockerfile: Dockerfile
|
|
container_name: claude-max-bridge
|
|
restart: unless-stopped
|
|
environment:
|
|
CLAUDE_BIN: /usr/local/bin/claude
|
|
CLAUDE_HOME: /root/.claude
|
|
LOG_LEVEL: INFO
|
|
REQUEST_TIMEOUT_S: "120"
|
|
volumes:
|
|
- /usr/local/bin/claude:/usr/local/bin/claude:ro
|
|
- /root/.claude:/root/.claude:rw
|
|
- /root/.claude.json:/root/.claude.json:rw
|
|
networks:
|
|
- ai-internal
|
|
healthcheck:
|
|
test: ["CMD", "python3", "-c", "import urllib.request; urllib.request.urlopen('http://localhost:8000/health')"]
|
|
interval: 30s
|
|
timeout: 5s
|
|
retries: 3
|
|
start_period: 10s
|
|
|
|
networks:
|
|
ai-internal:
|
|
external: true
|
|
shared_backend:
|
|
external: true
|
|
|