# Use the official Node.js 20 image as the base image FROM node:20 AS builder ARG SIGNALR_URL=http://localhost:8080/ws ARG ENDPOINT_URL=http://localhost:8080/send ARG COMMIT=devbuild # Set the working directory inside the container WORKDIR /app # Copy the package.json and yarn.lock files to the working directory COPY package.json ./ COPY yarn.lock ./ # Install the app dependencies RUN yarn install RUN yarn audit # Copy the app source code to the working directory COPY . . RUN yarn lint RUN echo "VITE_SIGNALR_URL=${SIGNALR_URL}" >> .env RUN echo "VITE_ENDPOINT_URL=${ENDPOINT_URL}" >> .env RUN echo "VITE_COMMIT=${COMMIT}" >> .env # Build the app RUN yarn build FROM steebchen/nginx-spa:stable AS runner WORKDIR /app COPY --from=builder /app/dist . EXPOSE 80 CMD ["nginx"]