FROM node:22-slim AS build WORKDIR /repo/web COPY web/package.json web/package-lock.json ./ RUN npm ci COPY web/ . COPY data/shared.json /repo/data/shared.json RUN npm run build FROM nginx:alpine COPY --from=build /repo/web/dist /usr/share/nginx/html COPY web/nginx.conf /etc/nginx/conf.d/default.conf COPY web/docker-entrypoint.sh /docker-entrypoint.sh RUN chmod +x /docker-entrypoint.sh EXPOSE 80 ENTRYPOINT ["/docker-entrypoint.sh"] CMD ["nginx", "-g", "daemon off;"]