fix: slim Dockerfile — server needs no Python/torch (workers handle execution)
This commit is contained in:
parent
65fc67e01a
commit
12cd831963
16
Dockerfile
16
Dockerfile
@ -6,21 +6,13 @@ RUN npm ci
|
|||||||
COPY web/ ./
|
COPY web/ ./
|
||||||
RUN npm run build
|
RUN npm run build
|
||||||
|
|
||||||
# Stage 2: Runtime (debian for glibc — torch/sentence-transformers need manylinux wheels)
|
# Stage 2: Runtime — server is just a static binary + frontend assets
|
||||||
FROM debian:bookworm-slim
|
FROM alpine:3.20
|
||||||
RUN apt-get update && apt-get install -y --no-install-recommends ca-certificates curl && rm -rf /var/lib/apt/lists/*
|
RUN apk add --no-cache ca-certificates
|
||||||
RUN curl -LsSf https://astral.sh/uv/install.sh | sh
|
RUN mkdir -p /app/data
|
||||||
ENV PATH="/root/.local/bin:$PATH"
|
|
||||||
RUN uv venv --python 3.12 /app/venv && uv pip install --python /app/venv/bin/python sentence-transformers
|
|
||||||
RUN /app/venv/bin/python -c "from sentence_transformers import SentenceTransformer; SentenceTransformer('all-MiniLM-L6-v2')"
|
|
||||||
# Pre-warm uv cache with common packages (shared across all project venvs)
|
|
||||||
RUN uv pip install --python /app/venv/bin/python httpx fastapi uvicorn requests flask pydantic numpy pandas matplotlib pillow jinja2 pyyaml python-dotenv beautifulsoup4 lxml aiohttp aiofiles pytest rich click typer sqlalchemy
|
|
||||||
RUN mkdir -p /app/data/workspaces
|
|
||||||
WORKDIR /app
|
WORKDIR /app
|
||||||
COPY target/aarch64-unknown-linux-musl/release/tori .
|
COPY target/aarch64-unknown-linux-musl/release/tori .
|
||||||
COPY --from=frontend /app/web/dist ./web/dist/
|
COPY --from=frontend /app/web/dist ./web/dist/
|
||||||
COPY scripts/embed.py ./scripts/
|
|
||||||
COPY app-templates/ ./templates/
|
|
||||||
COPY config.yaml .
|
COPY config.yaml .
|
||||||
|
|
||||||
EXPOSE 3000
|
EXPOSE 3000
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user