# Simplified Dockerfile for Next.js Landing Page FROM node:20-alpine AS builder WORKDIR /app # Install pnpm RUN npm install -g pnpm@10.11.0 # Copy everything COPY pnpm-workspace.yaml package.json pnpm-lock.yaml ./ COPY apps/landing ./apps/landing COPY packages/database ./packages/database # Install and build RUN pnpm install --frozen-lockfile ENV NEXT_TELEMETRY_DISABLED=1 RUN pnpm --filter @banatie/landing build # Production runner FROM node:20-alpine AS runner WORKDIR /app ENV NODE_ENV=production ENV NEXT_TELEMETRY_DISABLED=1 RUN addgroup --system --gid 1001 nodejs RUN adduser --system --uid 1001 nextjs # Copy built app COPY --from=builder /app/apps/landing/.next/standalone ./ COPY --from=builder /app/apps/landing/.next/static ./apps/landing/.next/static COPY --from=builder /app/apps/landing/public ./apps/landing/public USER nextjs EXPOSE 3000 ENV PORT=3000 ENV HOSTNAME=0.0.0.0 WORKDIR /app/apps/landing CMD ["node", "server.js"]