2024-02-04 15:10:32 +08:00
|
|
|
FROM node:18.12.1-buster-slim AS builder
|
|
|
|
|
|
|
|
# Set the working directory in the container
|
|
|
|
WORKDIR /app
|
|
|
|
|
|
|
|
ARG VERSION="5.1.2"
|
|
|
|
|
|
|
|
## Install dependencies
|
|
|
|
RUN mkdir webapp && npm pack @wisemapping/webapp@${VERSION} && tar -xvzf wisemapping-webapp-${VERSION}.tgz -C webapp
|
|
|
|
RUN mkdir mindplot && npm pack @wisemapping/mindplot@${VERSION} && tar -xvzf wisemapping-mindplot-${VERSION}.tgz -C mindplot
|
|
|
|
ADD index.html .
|
|
|
|
|
|
|
|
# Use Nginx as the production server
|
2024-02-05 00:45:00 +08:00
|
|
|
FROM nginx:latest
|
2024-02-04 15:10:32 +08:00
|
|
|
LABEL maintainer="Paulo Gustavo Veiga <pveiga@wisemapping.com>"
|
|
|
|
|
|
|
|
## Copy the built React app to Nginx's web server directory
|
2024-02-05 00:45:00 +08:00
|
|
|
COPY --from=builder /app/index.html /usr/share/nginx/html/
|
2024-02-04 15:10:32 +08:00
|
|
|
COPY --from=builder /app/webapp/package/dist/* /usr/share/nginx/html/webapp/
|
|
|
|
COPY --from=builder /app/mindplot/package/dist/* /usr/share/nginx/html/mindplot/
|
|
|
|
|
2024-02-05 00:45:00 +08:00
|
|
|
ADD nginx.conf .
|
|
|
|
COPY nginx.conf /etc/nginx/conf.d/default.conf
|
|
|
|
|
2024-02-04 15:10:32 +08:00
|
|
|
# Expose port 80 for the Nginx server
|
|
|
|
EXPOSE 80
|
|
|
|
|
|
|
|
# Start Nginx when the container runs
|
|
|
|
CMD ["nginx", "-g", "daemon off;"]
|