Dockerfile 806 B

123456789101112131415161718192021222324252627282930313233343536
  1. FROM node:18.3.0 as builder
  2. ADD package*.json /opt/ui/
  3. WORKDIR /opt/ui
  4. RUN npm install
  5. ADD src /opt/ui/src
  6. RUN npx parcel build src/index.html
  7. FROM nginx:alpine
  8. ARG version=dev
  9. ARG commit=HEAD
  10. ENV VERSION=${version}
  11. ENV HEAD=${commit}
  12. ENV API_PORT=9003
  13. ENV API_SERVER=0.0.0.0
  14. ENV UI_PORT=9090
  15. COPY --from=builder /opt/ui/dist /var/www
  16. COPY default.nginx.conf.template /etc/nginx/conf.d/default.nginx.conf.template
  17. COPY nginx.conf /etc/nginx/
  18. COPY ./docker-entrypoint.sh /usr/local/bin/
  19. RUN rm -rf /etc/nginx/conf.d/default.conf
  20. RUN adduser 1001 -g 1000 -D
  21. RUN chown 1001:1000 -R /var/www
  22. RUN chown 1001:1000 -R /etc/nginx
  23. RUN chown 1001:1000 -R /usr/local/bin/docker-entrypoint.sh
  24. ENV BASE_URL=/model
  25. USER 1001
  26. ENTRYPOINT ["/usr/local/bin/docker-entrypoint.sh"]
  27. CMD ["nginx", "-g", "daemon off;"]