1ea614c26b
sentence-transformers zieht torch als Dependency, und der Default-Wheel auf x86_64-linux ist die CUDA-Variante mit allen NVIDIA-Libs (nvidia-cudnn, nvidia-cublas, cuda-toolkit, triton, ...). ~5 GB pro Build-Layer, frisst die 22-GB-VM auf. Fix: torch CPU-Wheel explizit zuerst installieren. Damit ist die torch-Dependency erfuellt wenn sentence-transformers spaeter kommt, und die CUDA-Libs werden nie gezogen. Brain laeuft eh komplett auf CPU (MiniLM-Embeddings ~120 MB), GPU-Bloat war reine Disk-Verschwendung. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
43 lines
1.6 KiB
Docker
43 lines
1.6 KiB
Docker
# ════════════════════════════════════════════════════════════
|
|
# ARIA Brain — Agent + Memory Container
|
|
#
|
|
# FastAPI-Server mit Vector-DB-Memory (Qdrant).
|
|
# Spricht via HTTP/WebSocket mit Bridge und Diagnostic.
|
|
# LLM-Calls gehen ueber den Proxy (claude-max-api-proxy).
|
|
# ════════════════════════════════════════════════════════════
|
|
|
|
FROM python:3.12-slim
|
|
|
|
# System-Tools die Skills brauchen koennten (curl, jq, git, ssh-client,
|
|
# Build-Basics fuer venv-Compiles). Bewusst sparsam — alles weitere
|
|
# bringt der Skill selbst mit (siehe execution=local-bin).
|
|
RUN apt-get update && apt-get install -y --no-install-recommends \
|
|
curl \
|
|
jq \
|
|
git \
|
|
openssh-client \
|
|
ca-certificates \
|
|
&& rm -rf /var/lib/apt/lists/*
|
|
|
|
WORKDIR /app
|
|
|
|
# CPU-only torch zuerst — sonst zieht sentence-transformers den Default
|
|
# torch-Wheel der ~5 GB CUDA-Libs (nvidia-cudnn, nvidia-cublas, cuda-toolkit,
|
|
# triton, ...) als Dependencies einsaugt. Brain laeuft komplett auf CPU
|
|
# (MiniLM-Embeddings ~120 MB), wir brauchen das alles nicht.
|
|
RUN pip install --no-cache-dir torch==2.5.1 \
|
|
--index-url https://download.pytorch.org/whl/cpu
|
|
|
|
COPY requirements.txt .
|
|
RUN pip install --no-cache-dir -r requirements.txt
|
|
|
|
COPY . .
|
|
|
|
# Embedding-Model-Cache und Skills landen unter /data (Volume)
|
|
ENV SENTENCE_TRANSFORMERS_HOME=/data/_models
|
|
ENV ARIA_DATA_DIR=/data
|
|
|
|
EXPOSE 8080
|
|
|
|
CMD ["uvicorn", "main:app", "--host", "0.0.0.0", "--port", "8080"]
|