brief-20/frontend/Dockerfile
Avnyr b8fc2219b9 feat: add UI components and assets for frontend layout
Implemented reusable UI components including AlertDialog, Accordion, Breadcrumb, Button, Card, and Calendar. Added essential assets and SVG icons for improved interface design. Integrated a base homepage layout with responsive grid structure.
2025-05-15 17:12:43 +02:00

38 lines
778 B
Docker

FROM node:20-alpine AS base
# Install pnpm
RUN npm install -g pnpm
# Set working directory
WORKDIR /app
# Copy package.json and install dependencies
FROM base AS dependencies
COPY package.json ./
RUN pnpm install
# Build the application
FROM dependencies AS build
COPY . .
RUN pnpm run build
# Production image
FROM node:20-alpine AS production
WORKDIR /app
# Copy necessary files for production
COPY --from=build /app/public ./public
COPY --from=build /app/.next ./.next
COPY --from=build /app/node_modules ./node_modules
COPY --from=build /app/package.json ./package.json
COPY --from=build /app/next.config.ts ./next.config.ts
# Set environment variables
ENV NODE_ENV=production
ENV PORT=3000
# Expose port
EXPOSE ${PORT}
# Start the application
CMD ["pnpm", "start"]