# syntax=docker/dockerfile:1 FROM node:20-alpine AS build WORKDIR /app ENV PNPM_HOME="/root/.local/share/pnpm" ENV PATH="$PNPM_HOME:$PATH" RUN corepack enable && corepack prepare pnpm@9.12.0 --activate COPY package.json pnpm-lock.yaml* ./ RUN pnpm install --frozen-lockfile COPY . . # --- Build args (med BRA defaults) --- ARG VITE_API_BASE_URL=http://localhost:8080 ARG VITE_BASE_PATH=/ # Gör ARG:arna synliga för Vite config (vite.config.ts läser process.env.VITE_*) ENV VITE_API_BASE_URL=$VITE_API_BASE_URL ENV VITE_BASE_PATH=$VITE_BASE_PATH ARG VITE_OIDC_AUTHORITY= ARG VITE_OIDC_CLIENT_ID= ARG VITE_OIDC_REDIRECT_URI= ARG VITE_OIDC_POST_LOGOUT_REDIRECT_URI= ARG VITE_OIDC_SILENT_REDIRECT_URI= ENV VITE_OIDC_AUTHORITY=$VITE_OIDC_AUTHORITY \ VITE_OIDC_CLIENT_ID=$VITE_OIDC_CLIENT_ID \ VITE_OIDC_REDIRECT_URI=$VITE_OIDC_REDIRECT_URI \ VITE_OIDC_POST_LOGOUT_REDIRECT_URI=$VITE_OIDC_POST_LOGOUT_REDIRECT_URI \ VITE_OIDC_SILENT_REDIRECT_URI=$VITE_OIDC_SILENT_REDIRECT_URI RUN pnpm build FROM nginx:1.27-alpine AS runtime COPY ./.docker/nginx.conf /etc/nginx/conf.d/default.conf COPY --from=build /app/dist /usr/share/nginx/html HEALTHCHECK --interval=30s --timeout=3s --retries=3 CMD wget -qO- http://127.0.0.1/ || exit 1 EXPOSE 80 CMD ["nginx", "-g", "daemon off;"]