content: # Step 1: Use the official Bun image
  FROM oven/bun:alpine AS base
  WORKDIR /usr/src/app
  
  # install dependencies into temp directory
  # this will cache them and speed up future builds
  FROM base AS install
  RUN mkdir -p /temp/dev
  COPY package.json bun.lock /temp/dev/
  RUN --mount=type=cache,target=/root/.bun/install/cache cd /temp/dev && bun install --frozen-lockfile
  
  
  # copy node_modules from temp directory
  # then copy all (non-ignored) project files into the image
  FROM base AS builder
  WORKDIR /app
  COPY . .
  COPY --from=install /temp/dev/node_modules node_modules
  
  # Run bun run build to build the application
  ARG NEXT_PUBLIC_APP_URL=http://localhost:3000
  ENV NEXT_PUBLIC_APP_URL=$NEXT_PUBLIC_APP_URL
  ENV NEXT_TELEMETRY_DISABLED=1
  RUN bun run build
  
  
  # Production image, copy all the files and run next
  FROM base AS runner
  WORKDIR /app
  
  ENV NODE_ENV production
  # Uncomment the following line in case you want to disable telemetry during runtime.
  ENV NEXT_TELEMETRY_DISABLED 1
  
  RUN addgroup --system --gid 1001 nodejs
  RUN adduser --system --uid 1001 nextjs
  
  COPY --from=builder /app/public ./public
  
  # Automatically leverage output traces to reduce image size
  # https://nextjs.org/docs/advanced-features/output-file-tracing
  COPY --from=builder --chown=nextjs:nodejs /app/.next/standalone ./
  COPY --from=builder --chown=nextjs:nodejs /app/.next/static ./.next/static
  
  USER nextjs
  
  EXPOSE 3000
  
  ENV PORT 3000
  
  CMD ["bun", "server.js"]