Files
ukmesh/Dockerfile.app
T

29 lines
892 B
Docker

# App frontend — React SPA served via Nginx, proxies /api and /ws to backend
FROM node:20-alpine AS frontend-builder
WORKDIR /build/frontend
COPY frontend/package.json ./
RUN npm install
COPY frontend/ ./
ARG VITE_APP_HOSTNAME
ARG VITE_NETWORK=teesside
ARG VITE_SITE=teesside
ARG VITE_OBSERVER_ID=
ARG VITE_SITE_DISPLAY_NAME=
ARG VITE_SITE_FOOTER_NAME=
ARG VITE_SITE_APP_URL=
ARG VITE_SITE_HOME_URL=
ENV VITE_APP_HOSTNAME=$VITE_APP_HOSTNAME
ENV VITE_NETWORK=$VITE_NETWORK
ENV VITE_SITE=$VITE_SITE
ENV VITE_OBSERVER_ID=$VITE_OBSERVER_ID
ENV VITE_SITE_DISPLAY_NAME=$VITE_SITE_DISPLAY_NAME
ENV VITE_SITE_FOOTER_NAME=$VITE_SITE_FOOTER_NAME
ENV VITE_SITE_APP_URL=$VITE_SITE_APP_URL
ENV VITE_SITE_HOME_URL=$VITE_SITE_HOME_URL
RUN npm run build
FROM nginx:alpine
COPY --from=frontend-builder /build/frontend/dist /usr/share/nginx/html
COPY nginx.app.conf /etc/nginx/conf.d/default.conf
EXPOSE 80