FROM node:20-alpine AS build WORKDIR /app # Install dependencies COPY frontend/package*.json ./ RUN npm install # Copy source files COPY frontend/tsconfig*.json ./ COPY frontend/vite.config.ts ./ COPY frontend/index.html ./ COPY frontend/src ./src COPY frontend/public ./public COPY shared ./shared RUN npm run build FROM nginx:alpine COPY --from=build /app/dist /usr/share/nginx/html COPY frontend/public/icon-64.png /usr/share/nginx/html/icon-64.png COPY frontend/public/icon-512.png /usr/share/nginx/html/icon-512.png COPY frontend/nginx.conf /etc/nginx/conf.d/default.conf EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]