Namespace
library
Image / Tag
maven:3.9.16-ibm-semeru-21-noble
Content Digest
sha256:b535952f2945496a2ecdd20a275148863e6160d65df4602b09be36b8af30a42e
Details
Created

2026-08-31 20:40:47 UTC

Size

312 MB

Content Digest
Labels
  • 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.
  • org.opencontainers.image.source
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.title
    Apache Maven
  • org.opencontainers.image.url
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.version
    24.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

21.0.12.10

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

MAVEN_CONFIG

/root/.m2

MAVEN_HOME

/usr/share/maven

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:0926a8eb0e608a5c6888d1cd5594184bdf3ed3aa311dba5b42a547caefdc6f2e - 9.09% (28.4 MB)

[#001] sha256:a2242eaf83b2c0791d773f891813b62f1f716dc0c344724f9e0a493508c6f60d - 4.64% (14.5 MB)

[#002] sha256:5f4f6f16cabf6710b9f16d6a67146769f0dd8eeed2233785442cd078c2d67d15 - 73.82% (230 MB)

[#003] sha256:9513c70d7bca74df3fcb018f7b4b694912bf457fcc570124bbf2f283d59dd58a - 1.96% (6.13 MB)

[#004] sha256:5d2cbec9a40b16a5374ad04e638eca0c15ee15fc25fa3f985d045cec693d216d - 7.63% (23.8 MB)

[#005] sha256:7e51296456ea9956a37174cdb5ae701dab229ce121118d00c24dac907bc689c6 - 2.86% (8.93 MB)

[#006] sha256:ca274097345b3dea0a2b6f43f09c95d99fe4b03573e9c821bc7443f3a576fc62 - 0.0% (853 Bytes)

[#007] sha256:78a41ef8ccec1158f3748f90da742dca49018a483be78a66ff70e26a1ee95941 - 0.0% (155 Bytes)


History
2026-08-17 13:09:48 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-08-17 13:09:48 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-08-17 13:09:48 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04

2026-08-17 13:09:50 UTC

/bin/sh -c #(nop) ADD file:cb9335ce6f27399c2b17787739d6675502767c53e0335ded2a5f0d003d996650 in /

2026-08-17 13:09:51 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-08-31 19:22:16 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2026-08-31 19:22:16 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 19:22:16 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.10

2026-08-31 19:22:22 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='027329a3b7170b7b976243f769b13bc1354bbcddaffea399ef070cff9cfc2e8b'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_aarch64_linux_21.0.12.10.tar.gz'; ;; amd64|x86_64) ESUM='94da688246c7d3a9916a9a615a5270fa58868d3359942cb351a8e6857e47ae30'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_x64_linux_21.0.12.10.tar.gz'; ;; ppc64el|ppc64le) ESUM='736909491296886b0d5270ccf5e86833b9caad25e12eeb1e31e1a6b602adecb0'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.10.tar.gz'; ;; s390x) ESUM='4a4661ab553b727b31dfe1041f15cc34f15da07348a3b52da1fe91fe54bcbb42'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_s390x_linux_21.0.12.10.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2026-08-31 19:22:22 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-08-31 19:22:22 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2026-08-31 19:23:25 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; export CATALINA_PID=/opt/tomcat-home/tomcat.pid; TOMCAT_CHECKSUM="16494dd4745f808d3c506807b5275521fd71044d976f441d18eeeab0f5a38bc1b5344ca395292f6f26eb7612cd8c8e746d01ccdfb29893d394052d9f4b1f4c11"; TOMCAT_VERSION="9.0.121"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; unset CATALINA_PID; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

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.

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

COPY /usr/share/maven /usr/share/maven # buildkit

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]

2026-08-31 20:40:47 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Created

2026-08-31 20:22:17 UTC

Size

307 MB

Content Digest
Labels
  • 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.
  • org.opencontainers.image.source
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.title
    Apache Maven
  • org.opencontainers.image.url
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.version
    24.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

21.0.12.10

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

MAVEN_CONFIG

/root/.m2

MAVEN_HOME

/usr/share/maven

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:0b613318ea879878918380aa3aeb220dfe824e311b83bc955cb8a1d4319650ab - 8.97% (27.5 MB)

[#001] sha256:6f397407410904e641ab9c470ad9434d8803652be35b21c6fa1c8ccac0581a3a - 4.68% (14.4 MB)

[#002] sha256:e25e1d34fb0125074d3203da8d724da59aff5f855a304956c0b5f32a8751e82c - 73.77% (227 MB)

[#003] sha256:301db9cab4783559aea9afc398a12244b68fdaa7bc4392b3ddf5e3e03154d42c - 1.91% (5.87 MB)

[#004] sha256:3c1997b23724157d69b3cdd109d123108e497009b89a27ddda6ef44cb0a88913 - 7.77% (23.9 MB)

[#005] sha256:8054898099e96b5a318dfa9dae3db08c141c7f5c20a56cf1698658177affb15c - 2.91% (8.93 MB)

[#006] sha256:a2606307b3d3028b437bd18c299c013f6fab4bd3edd2450e054ba4f02b6152ba - 0.0% (854 Bytes)

[#007] sha256:98789833b09f40960b3d3b46996e813dfb94b1c5741122940bf2b9f2580b0a14 - 0.0% (156 Bytes)


History
2026-08-17 13:11:31 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-08-17 13:11:31 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-08-17 13:11:31 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04

2026-08-17 13:11:34 UTC

/bin/sh -c #(nop) ADD file:0387b3d029de8fa08641ccfaa44c6a4ad07b93035420d53b49783ea27527d153 in /

2026-08-17 13:11:34 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-08-31 19:39:46 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2026-08-31 19:39:46 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 19:39:46 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.10

2026-08-31 19:39:53 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='027329a3b7170b7b976243f769b13bc1354bbcddaffea399ef070cff9cfc2e8b'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_aarch64_linux_21.0.12.10.tar.gz'; ;; amd64|x86_64) ESUM='94da688246c7d3a9916a9a615a5270fa58868d3359942cb351a8e6857e47ae30'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_x64_linux_21.0.12.10.tar.gz'; ;; ppc64el|ppc64le) ESUM='736909491296886b0d5270ccf5e86833b9caad25e12eeb1e31e1a6b602adecb0'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.10.tar.gz'; ;; s390x) ESUM='4a4661ab553b727b31dfe1041f15cc34f15da07348a3b52da1fe91fe54bcbb42'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_s390x_linux_21.0.12.10.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2026-08-31 19:39:53 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-08-31 19:39:53 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2026-08-31 19:40:56 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; export CATALINA_PID=/opt/tomcat-home/tomcat.pid; TOMCAT_CHECKSUM="16494dd4745f808d3c506807b5275521fd71044d976f441d18eeeab0f5a38bc1b5344ca395292f6f26eb7612cd8c8e746d01ccdfb29893d394052d9f4b1f4c11"; TOMCAT_VERSION="9.0.121"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; unset CATALINA_PID; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

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.

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

COPY /usr/share/maven /usr/share/maven # buildkit

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]

2026-08-31 20:22:17 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Created

2026-08-31 22:48:31 UTC

Size

323 MB

Content Digest
Labels
  • 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.
  • org.opencontainers.image.source
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.title
    Apache Maven
  • org.opencontainers.image.url
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.version
    24.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

21.0.12.10

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

MAVEN_CONFIG

/root/.m2

MAVEN_HOME

/usr/share/maven

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:9ce277f493517cc144a5fc2f41269e529e99b662f089df362b22f62d1fbb7436 - 10.14% (32.7 MB)

[#001] sha256:0821d8a28344aae1957817b1d0874ae524cba14349eb71056577895401dc11a3 - 4.06% (13.1 MB)

[#002] sha256:ec757e6ae86b9c9cc096411cefec505b0dfddf6828496557f5ba73263ba37d5c - 72.64% (234 MB)

[#003] sha256:de4981d435604e9805c62970648c797fe6aef3535a5c2f3352f479a077ca8a18 - 1.55% (5 MB)

[#004] sha256:ef686377c54c102e414c450f9998a7b73375212eced36c41bb15ef3c529fb9d3 - 8.83% (28.5 MB)

[#005] sha256:c8fcb63bd528012776d9e5ee02a30455818333d7fb78a7985a3e771ada7c4664 - 2.77% (8.93 MB)

[#006] sha256:f79703b69f6505791f06cb735f6f1bd74cd1b8bc9fb1104a4e9abb96beb9c306 - 0.0% (851 Bytes)

[#007] sha256:576e5d6f6450d471850b66298cc4f8bc47b0ea71789cecf305c8a050f16c32ca - 0.0% (155 Bytes)


History
2026-08-17 13:37:16 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-08-17 13:37:16 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-08-17 13:37:16 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04

2026-08-17 13:37:19 UTC

/bin/sh -c #(nop) ADD file:2c1f3ca3b8968d5c5bcce4fb1290d9ca7224bbde9578f0051bf2d5493b3b6481 in /

2026-08-17 13:37:20 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-08-19 21:25:52 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2026-08-19 21:25:52 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-19 21:25:52 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.10

2026-08-31 20:24:42 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='027329a3b7170b7b976243f769b13bc1354bbcddaffea399ef070cff9cfc2e8b'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_aarch64_linux_21.0.12.10.tar.gz'; ;; amd64|x86_64) ESUM='94da688246c7d3a9916a9a615a5270fa58868d3359942cb351a8e6857e47ae30'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_x64_linux_21.0.12.10.tar.gz'; ;; ppc64el|ppc64le) ESUM='736909491296886b0d5270ccf5e86833b9caad25e12eeb1e31e1a6b602adecb0'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.10.tar.gz'; ;; s390x) ESUM='4a4661ab553b727b31dfe1041f15cc34f15da07348a3b52da1fe91fe54bcbb42'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_s390x_linux_21.0.12.10.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2026-08-31 20:24:42 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-08-31 20:24:42 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2026-08-31 20:25:48 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; export CATALINA_PID=/opt/tomcat-home/tomcat.pid; TOMCAT_CHECKSUM="16494dd4745f808d3c506807b5275521fd71044d976f441d18eeeab0f5a38bc1b5344ca395292f6f26eb7612cd8c8e746d01ccdfb29893d394052d9f4b1f4c11"; TOMCAT_VERSION="9.0.121"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; unset CATALINA_PID; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

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.

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

COPY /usr/share/maven /usr/share/maven # buildkit

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]

2026-08-31 22:48:31 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Created

2026-08-31 18:53:37 UTC

Size

318 MB

Content Digest
Labels
  • 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.
  • org.opencontainers.image.source
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.title
    Apache Maven
  • org.opencontainers.image.url
    https://github.com/carlossg/docker-maven
  • org.opencontainers.image.version
    24.04

Environment
JAVA_HOME

/opt/java/openjdk

JAVA_TOOL_OPTIONS

-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

JAVA_VERSION

21.0.12.10

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

MAVEN_CONFIG

/root/.m2

MAVEN_HOME

/usr/share/maven

PATH

/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin


Layers

[#000] sha256:5d1d3f92cfa6f52fd8d52857915fa3c3464dbd12014bfc03e5e163fc72a4de1d - 8.98% (28.5 MB)

[#001] sha256:4dc53ad180144083eaa682c0dd4546c9c2f99db381b224d5c1c91cfe39cd4324 - 4.55% (14.5 MB)

[#002] sha256:2554f6910c81ff08c078127a6b8a1ff4490d861a78354f16a3a92f5b45f72ac1 - 73.77% (235 MB)

[#003] sha256:09704e4633b8b3a9baefbdd844b0af03fb8345fba8c94580a104d199d5171f73 - 1.99% (6.32 MB)

[#004] sha256:5d30018ac0713b1d83901ea0239497e5d6a4414fcb105d548024ad73e976b22c - 7.9% (25.1 MB)

[#005] sha256:1c69e43628ef83bd2804dcc2336cd28757361ff1e6caf5139138ba856d444a29 - 2.81% (8.93 MB)

[#006] sha256:ddc94a7d25bda8dcad39faa60bdbec1c34b5397d6284c86685ba18d962cf90ca - 0.0% (854 Bytes)

[#007] sha256:89c32b75437a763a5f7a0437cf504029f0a2eefe9d6c8b5199794ba89ef96a9f - 0.0% (156 Bytes)


History
2026-08-17 13:37:10 UTC

/bin/sh -c #(nop) ARG RELEASE

2026-08-17 13:37:10 UTC

/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH

2026-08-17 13:37:10 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04

2026-08-17 13:37:12 UTC

/bin/sh -c #(nop) ADD file:4483a9a8fede37e8d587c88a49ab036598c57a1cdc8558d50175c642d747d633 in /

2026-08-17 13:37:12 UTC

/bin/sh -c #(nop) CMD ["/bin/bash"]

2026-08-31 18:33:21 UTC (buildkit.dockerfile.v0)

ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8

2026-08-31 18:33:21 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends tzdata curl ca-certificates fontconfig locales && echo "en_US.UTF-8 UTF-8" >> /etc/locale.gen && locale-gen en_US.UTF-8 && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 18:33:21 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.10

2026-08-31 18:38:07 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='027329a3b7170b7b976243f769b13bc1354bbcddaffea399ef070cff9cfc2e8b'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_aarch64_linux_21.0.12.10.tar.gz'; ;; amd64|x86_64) ESUM='94da688246c7d3a9916a9a615a5270fa58868d3359942cb351a8e6857e47ae30'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_x64_linux_21.0.12.10.tar.gz'; ;; ppc64el|ppc64le) ESUM='736909491296886b0d5270ccf5e86833b9caad25e12eeb1e31e1a6b602adecb0'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.10.tar.gz'; ;; s390x) ESUM='4a4661ab553b727b31dfe1041f15cc34f15da07348a3b52da1fe91fe54bcbb42'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.10/ibm-semeru-open-jdk_s390x_linux_21.0.12.10.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; curl -LfsSo /tmp/openjdk.tar.gz ${BINARY_URL}; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p /opt/java/openjdk; cd /opt/java/openjdk; tar -xf /tmp/openjdk.tar.gz --strip-components=1; rm -rf /tmp/openjdk.tar.gz; # buildkit

2026-08-31 18:38:07 UTC (buildkit.dockerfile.v0)

ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin

2026-08-31 18:38:07 UTC (buildkit.dockerfile.v0)

ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal

2026-08-31 18:39:11 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; export CATALINA_PID=/opt/tomcat-home/tomcat.pid; TOMCAT_CHECKSUM="16494dd4745f808d3c506807b5275521fd71044d976f441d18eeeab0f5a38bc1b5344ca395292f6f26eb7612cd8c8e746d01ccdfb29893d394052d9f4b1f4c11"; TOMCAT_VERSION="9.0.121"; TOMCAT_FILENAME="apache-tomcat-${TOMCAT_VERSION}.tar.gz"; SUCCESS=; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; for baseUrl in https://dlcdn.apache.org/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin https://archive.apache.org/dist/tomcat/tomcat-9/v${TOMCAT_VERSION}/bin ; do if curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${baseUrl}/${TOMCAT_FILENAME}" && [ -s "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz ]; then SUCCESS=1; break; fi; done; [ -n "$SUCCESS" ]; echo "${TOMCAT_CHECKSUM} ${DOWNLOAD_PATH_TOMCAT}/tomcat.tar.gz" | sha512sum -c -; tar -xf "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz -C "${INSTALL_PATH_TOMCAT}" --strip-components=1; rm -rf "${DOWNLOAD_PATH_TOMCAT}"; java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 15; FULL=$( (java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); DST_CACHE=$(java -Xshareclasses:name=dry_run_scc,cacheDir=/opt/java/.scc,destroy 2>&1 || true); SCC_SIZE=$(echo $SCC_SIZE | sed 's/.$//'); SCC_SIZE=$(awk "BEGIN {print int($SCC_SIZE * $FULL / 100.0)}"); [ "${SCC_SIZE}" -eq 0 ] && SCC_SIZE=1; SCC_SIZE="${SCC_SIZE}m"; java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal,createLayer -Xscmx$SCC_SIZE -version; unset OPENJ9_JAVA_OPTIONS; export OPENJ9_JAVA_OPTIONS="-XX:+IProfileDuringStartupPhase -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,bootClassesOnly,nonFatal"; "${INSTALL_PATH_TOMCAT}"/bin/startup.sh; sleep 20; "${INSTALL_PATH_TOMCAT}"/bin/shutdown.sh -force; sleep 5; FULL=$( (java -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,printallStats 2>&1 || true) | awk '/^Cache is [0-9.]*% .*full/ {print substr($3, 1, length($3)-1)}'); echo "SCC layer is $FULL% full."; rm -rf "${INSTALL_PATH_TOMCAT}"; unset CATALINA_PID; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c apt-get update && apt-get install -y git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

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.

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

COPY /usr/share/maven /usr/share/maven # buildkit

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]

2026-08-31 18:53:37 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]