FROM debian:bookworm-slim USER root RUN apt-get update && apt-get install -y curl unzip ca-certificates && rm -rf /var/lib/apt/lists/* # Install Bun to a global path instead of /root/.bun ENV BUN_INSTALL=/usr/local/bun RUN curl -fsSL https://bun.sh/install | bash ENV PATH="/usr/local/bun/bin:$PATH" RUN bun --version # Create HF Spaces runtime user RUN useradd -m -u 1000 user WORKDIR /app ENV PLAYWRIGHT_BROWSERS_PATH=0 COPY --chown=user package.json ./ RUN bun install --production # Switch to runtime user — Bun is now in PATH because /usr/local/bun/bin is world-accessible USER user ENV PATH="/usr/local/bun/bin:/usr/local/bin:$PATH" COPY --chown=user . . ENV PORT=7860 ENV NODE_ENV=production ENV APP_ENV=prod EXPOSE 7860 CMD ["bun", "run", "start:prod:tsdown"]