Dockerfile 1.3 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152
  1. FROM azul/zulu-openjdk:8
  2. RUN apt update -y && apt upgrade -y && apt dist-upgrade -y
  3. RUN apt install -y curl unzip && apt clean
  4. RUN groupadd --gid 1000 nonroot
  5. RUN useradd --uid 1000 -r --gid 1000 nonroot
  6. COPY www /app_build/www
  7. COPY build-docker.sh /app_build
  8. COPY build.sh /app_build
  9. COPY src /app_build/src
  10. COPY build.gradle /app_build
  11. COPY settings.gradle /app_build
  12. # Install gradle
  13. RUN curl https://downloads.gradle-dn.com/distributions/gradle-6.7-bin.zip -o /tmp/gradle.zip
  14. RUN if [ "`sha256sum /tmp/gradle.zip | cut -d' ' -f1`" != "8ad57759019a9233dc7dc4d1a530cefe109dc122000d57f7e623f8cf4ba9dfc4" ];\
  15. then \
  16. echo "Error. This version of gradle is corrupted."; \
  17. exit 1;\
  18. fi && \
  19. mkdir -p /tmp/gradle && \
  20. unzip -q -d /tmp/gradle /tmp/gradle.zip &&\
  21. cp -Rf /tmp/gradle/gradle-*/bin/* /bin/ &&\
  22. cp -Rf /tmp/gradle/gradle-*/lib/* /lib/ &&\
  23. rm -Rf /tmp/gradle && rm -f /tmp/gradle.zip && \
  24. echo "Installed gradle `gradle -v`"
  25. # Build
  26. RUN cd /app_build &&\
  27. ./build.sh && \
  28. mv dist /app && \
  29. cd / && \
  30. rm -Rf /app_build
  31. RUN chown 1000:1000 /app
  32. USER nonroot
  33. WORKDIR /app
  34. ENTRYPOINT [ "java","-Djava.io.tmpdir=/tmp/apptmp","-jar","SoftwareStore.jar" ]
  35. # Writable volumes
  36. VOLUME /app/www/images/database
  37. VOLUME /app/config
  38. # tmpfs
  39. VOLUME /app/sitemap
  40. # tmpfs
  41. VOLUME /tmp/apptmp