FROM node:lts AS build
WORKDIR /app
COPY package*.json ./
RUN npm ci --no-audit --no-fund --omit=dev && \
    npm cache clean --force

# Copy source code and build
COPY . .
RUN npm run build

FROM nginx:alpine AS basic
COPY ./nginx/nginx.conf /etc/nginx/nginx.conf
COPY --from=build /app/dist /usr/share/nginx/html
EXPOSE 8080