| ADD file:fb066571462e703f86645131b43d211ff8531ffac77ea394456bfe569a6f17fe in / |
| CMD ["/bin/sh"] |
| ENV JAVA_HOME=/opt/java/openjdk |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 |
| RUN /bin/sh -c set -eux; apk add --no-cache fontconfig ttf-dejavu ca-certificates p11-kit-trust musl-locales musl-locales-lang binutils tzdata ; rm -rf /var/cache/apk/* # buildkit |
| ENV JAVA_VERSION=jdk-21.0.3+9 |
| RUN /bin/sh -c set -eux; ARCH="$(apk --print-arch)"; case "${ARCH}" in aarch64|arm64) ESUM='0f68a9122054149861f6ce9d1b1c176bbe30dd76b36b74c916ba897c12e9d970'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_aarch64_alpine-linux_hotspot_21.0.3_9.tar.gz'; ;; amd64|x86_64) ESUM='8e861638bf6b08c6d5837de6dc929930550928ec5fcc81b9fa7e8296afd0f9c0'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.3%2B9/OpenJDK21U-jdk_x64_alpine-linux_hotspot_21.0.3_9.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget -O /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; # buildkit |
| RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit |
| COPY entrypoint.sh /__cacert_entrypoint.sh # buildkit |
| ENTRYPOINT ["/__cacert_entrypoint.sh"] |
| CMD ["jshell"] |
| RUN /bin/sh -c apk add --no-cache bash procps curl tar # buildkit |
| LABEL org.opencontainers.image.title=Apache Maven |
| LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven |
| LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven |
| LABEL org.opencontainers.image.description=Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. |
| ENV MAVEN_HOME=/usr/share/maven |
| COPY /usr/share/maven /usr/share/maven # buildkit |
| COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit |
| COPY /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml # buildkit |
| RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit |
| ARG MAVEN_VERSION=3.9.7 |
| ARG USER_HOME_DIR=/root |
| ENV MAVEN_CONFIG=/root/.m2 |
| ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] |
| CMD ["mvn"] |
| WORKDIR /app |
| ADD pom.xml /app # buildkit |
| RUN /bin/sh -c mvn verify clean --fail-never # buildkit |
| COPY . /app # buildkit |
| RUN /bin/sh -c mvn clean install -Dmaven.test.failure.ignore=true # buildkit |
| EXPOSE [8081/tcp] |
| ENTRYPOINT ["java" "-jar" "./target/ptpChat-0.0.1-SNAPSHOT.jar"] |