FROM oven/bun:1.3.10 AS frontend WORKDIR /build COPY frontend/package.json frontend/bun.lock ./ RUN bun install --frozen-lockfile COPY frontend/ ./ RUN bun run build FROM python:3.12-slim RUN useradd -m -u 1000 user WORKDIR /app COPY requirements.txt ./ RUN pip install --no-cache-dir -r requirements.txt COPY --chown=user:user . . COPY --from=frontend --chown=user:user /build/dist /app/frontend/dist USER user ENV HOME=/home/user PYTHONUNBUFFERED=1 HF_HUB_DISABLE_TELEMETRY=1 EXPOSE 7860 CMD ["uvicorn", "server:app", "--host", "0.0.0.0", "--port", "7860", "--no-access-log"]