34 lines
754 B
Docker
34 lines
754 B
Docker
FROM node:20-alpine AS builder
|
|
|
|
WORKDIR /app
|
|
|
|
ARG GIT_COMMIT_HASH=unknown
|
|
ARG APP_VERSION=1.1.3
|
|
ARG VITE_ANALYTICS_PROVIDER=ga4
|
|
ARG VITE_GA4_ID=G-57HGKF773M
|
|
ARG VITE_GA4_DEBUG=false
|
|
|
|
ENV NODE_ENV=production
|
|
ENV VITE_APP_VERSION=$APP_VERSION
|
|
ENV VITE_GIT_HASH=$GIT_COMMIT_HASH
|
|
ENV VITE_ANALYTICS_PROVIDER=$VITE_ANALYTICS_PROVIDER
|
|
ENV VITE_GA4_ID=$VITE_GA4_ID
|
|
ENV VITE_GA4_DEBUG=$VITE_GA4_DEBUG
|
|
|
|
RUN npm install -g pnpm
|
|
|
|
COPY package.json pnpm-lock.yaml ./
|
|
RUN pnpm install
|
|
|
|
COPY . .
|
|
|
|
RUN echo "{\"version\": \"$APP_VERSION\", \"commit\": \"$GIT_COMMIT_HASH\", \"buildDate\": \"$(date)\"}" > public/version.json
|
|
|
|
RUN pnpm run build
|
|
|
|
FROM nginx:alpine
|
|
|
|
COPY --from=builder /app/dist /usr/share/nginx/html
|
|
|
|
COPY nginx-spa.conf /etc/nginx/conf.d/default.conf
|