FROM node:20-alpine AS frontend-build WORKDIR /app ARG NPM_CONFIG_REGISTRY=https://registry.npmjs.org/ ARG VITE_RUNTIME_ENV=production ARG VITE_ALLOW_INSECURE_DEV_LOGIN=false ENV NPM_CONFIG_REGISTRY=$NPM_CONFIG_REGISTRY ENV VITE_RUNTIME_ENV=$VITE_RUNTIME_ENV ENV VITE_ALLOW_INSECURE_DEV_LOGIN=$VITE_ALLOW_INSECURE_DEV_LOGIN COPY frontend/package*.json ./ RUN --mount=type=cache,target=/root/.npm \ npm ci \ --prefer-offline \ --no-audit \ --fetch-retries=5 \ --fetch-retry-mintimeout=20000 \ --fetch-retry-maxtimeout=120000 \ --replace-registry-host=npmjs COPY frontend/ ./ RUN npm run build FROM nginx:1.27-alpine COPY nginx/nginx.conf /etc/nginx/nginx.conf COPY --from=frontend-build /app/dist /usr/share/nginx/html