ARG CLIENTS_NODE_IMAGE=node:20-alpine
ARG CLIENTS_NGINX_IMAGE=nginx:1.27-alpine

FROM ${CLIENTS_NODE_IMAGE} AS build

WORKDIR /app
ENV UNI_INPUT_DIR=/app

ARG VITE_CLIENT_H5_API_BASE=/api/v1
ARG VITE_CLIENT_H5_SERVER_ORIGIN=
ARG VITE_CLIENT_NATIVE_API_BASE=http://10.0.10.11:8000/api/v1
ARG VITE_CLIENT_NATIVE_SERVER_ORIGIN=http://10.0.10.11:8000

ENV VITE_CLIENT_H5_API_BASE=${VITE_CLIENT_H5_API_BASE} \
    VITE_CLIENT_H5_SERVER_ORIGIN=${VITE_CLIENT_H5_SERVER_ORIGIN} \
    VITE_CLIENT_NATIVE_API_BASE=${VITE_CLIENT_NATIVE_API_BASE} \
    VITE_CLIENT_NATIVE_SERVER_ORIGIN=${VITE_CLIENT_NATIVE_SERVER_ORIGIN}

COPY package.json package-lock.json* ./
RUN npm install --legacy-peer-deps

COPY . .
RUN npm run build:h5

FROM ${CLIENTS_NGINX_IMAGE}

COPY nginx.conf /etc/nginx/templates/default.conf.template
COPY --from=build /app/dist/build/h5 /usr/share/nginx/html

EXPOSE 80
