FROM node:21-alpine AS build

WORKDIR /app/
COPY --chown=node:node package*.json ./
RUN yarn
COPY --chown=node:node . .
RUN npm run build
RUN npm cache clean --force
USER node

###################
# PRODUCTION
###################
FROM nginx:stable-alpine AS nginx

COPY --from=build /app/dist/ /usr/share/nginx/html/
COPY --from=build /app/run.sh /app/
COPY --from=build /app/nginx.conf /configs/
RUN chmod +x /app/run.sh

CMD ["/app/run.sh"]