# syntax = docker/dockerfile:1 ARG BUN_VERSION=1.2.19 # Build prisma FROM oven/bun:${BUN_VERSION} AS prisma WORKDIR /src COPY --link package.json ./package.json COPY --link bun.lock ./bun.lock COPY --link patches ./patches COPY --link prisma ./prisma COPY --link shared ./shared RUN bunx --bun prisma@6.16.1 generate FROM oven/bun:${BUN_VERSION} AS base ENV NODE_ENV=production WORKDIR /src # Build FROM base AS build COPY --link package.json bun.lock ./ COPY --link patches ./patches RUN bun install --production COPY --from=prisma /src/shared/generated shared/generated COPY --link . . RUN bun run build -- --preset bun # Run FROM base RUN apt-get update && apt-get -y install curl HEALTHCHECK CMD curl --fail http://localhost:3000/api/health || exit 1 COPY --from=build /src/.output . CMD ["bun", "run", "./server/index.mjs" ] LABEL org.opencontainers.image.source=https://github.com/PassiDel/pichunt