# XIP backend — Bun + Hono + Prisma. # Build context is the repo ROOT (see docker-compose.prod.yml) so we can copy backend/. FROM oven/bun:1-debian AS deps WORKDIR /app COPY backend/package.json ./ RUN bun install FROM oven/bun:1-debian AS runtime WORKDIR /app ENV NODE_ENV=production # Prisma's query engine needs openssl + CA certs (generate downloads it over HTTPS). RUN apt-get update \ && apt-get install -y --no-install-recommends openssl ca-certificates \ && rm -rf /var/lib/apt/lists/* COPY --from=deps /app/node_modules ./node_modules COPY backend/ ./ # Generate the Prisma client from the schema (no DB connection required). RUN bunx prisma generate \ && chmod +x docker-entrypoint.sh EXPOSE 3000 # Entrypoint applies migrations + seeds (idempotent) then starts the server. ENTRYPOINT ["/app/docker-entrypoint.sh"]