Tag

library/maven:3-ibm-semeru-21-noble
Content Digest: sha256:5b4e71193bd0a945c6c06899adb66d5a0da29d4eaae91c0e2e846d21101ae165
Manifests
Details
Content Digest

sha256:689e9fdbbdcacf518f376fe7a918130f11ef815e88ffb46886d7546b5aec5349

Created

2026-11-03 23:08:51 UTC

Size

308 MB


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.15

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:7a48b8f0e5c73d0cc2a85b008978396aa19d253dc1b96fdb0b769ee6dcbeca4a - 9.21% (28.4 MB)

[#001] sha256:2a617f0e043d03694f5f21a113f3f705cf1d35995690f2b80e5e7e7ea3147aa7 - 3.96% (12.2 MB)

[#002] sha256:b661072a8c0ae5f6124d49e177f25ec31d965f1157a7e53cf6146d605ce062a7 - 74.74% (230 MB)

[#003] sha256:484d1f18c9343e86d517618d293290f0b3530985aeb87d01b73dc2bebd1d7892 - 2.0% (6.15 MB)

[#004] sha256:13f40f2bdd87bcda9cbb17157f426cc19d8e7caec80486467e9922beb3392271 - 6.99% (21.5 MB)

[#005] sha256:ed60825dfb6b2ab61723fb8fe3ffaf14bf24d442b5dcb435c90cf3def8f2e301 - 3.11% (9.59 MB)

[#006] sha256:e3a19721e3cc98d53be245b4d905981c81da9a88a0a4c39ddd5d4199421c79d8 - 0.0% (852 Bytes)

[#007] sha256:7ddc7fddca897d707408dac9dbb2c4cbb26ae244e9c5783850b2ceca28ea199f - 0.0% (157 Bytes)


History
2026-10-25 14:17:45 UTC

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

2026-10-25 14:17:45 UTC

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

2026-10-25 14:17:45 UTC

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

2026-10-25 14:17:47 UTC

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

2026-10-25 14:17:47 UTC

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

2026-10-26 23:16:36 UTC (buildkit.dockerfile.v0)

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

2026-10-26 23:16:36 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-10-26 23:16:36 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.15

2026-10-26 23:19:44 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1d09a9d591f97fe22fb089ea382d46c6be17c7b32e2bd18ebfcc1a17a0948d91'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_aarch64_linux_21.0.12.15.tar.gz'; ;; amd64|x86_64) ESUM='5b62b53d61bde7e1b4901abea77b18c03e936234c37a9206f473d093f5e46d00'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_x64_linux_21.0.12.15.tar.gz'; ;; ppc64el|ppc64le) ESUM='97113620ec93e32dad8efee6f1e221c6ca7af201d632bd2bb2b1484fbd4483d5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.15.tar.gz'; ;; s390x) ESUM='e0b8ec4011a08ed43c561e20e2f5f8958a410d32074d958de77bcb2a76745533'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_s390x_linux_21.0.12.15.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-10-26 23:19:44 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-10-26 23:19:44 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-10-26 23:20:50 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-11-03 23:08:51 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-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 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-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:08:51 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Content Digest

sha256:e3bafb96a2d98412847b4406fa53dd27399aadd4a3000459c181ae8399828300

Created

2026-11-03 23:14:46 UTC

Size

304 MB


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.15

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:e2d2bb84d02254f4be480ca3c62f94fc12ac959c11b3ce5bd7da3f411b2b9607 - 9.09% (27.6 MB)

[#001] sha256:36b029f7a0741fb18031dfd2ad03cbb333eb4e614db0ce4d8c7b7473a9a49063 - 4.03% (12.2 MB)

[#002] sha256:80a78057dd7b6ae5c29be8a77f32c46604a0bb8def93a7e262d681d683c0f630 - 74.65% (227 MB)

[#003] sha256:4a63d95c4ed226d7a9b801825e4f3071ffad64cd6a899a50aabfb71250ac4fc9 - 1.95% (5.93 MB)

[#004] sha256:283a9af2583b4d0d5cf9cb5f7c158b3dc189b30998a2ece25d8471f985593c12 - 7.11% (21.6 MB)

[#005] sha256:8eecf51b0919da9a4e2aeec913c82a65a4359590e618cc7a4e448d59a96579c8 - 3.16% (9.59 MB)

[#006] sha256:3a5a2724c0ca6e9c451bb51894230b22fdcd17fd0a1d27b16db68734ab3fc178 - 0.0% (852 Bytes)

[#007] sha256:786f1a977d489093d1080984a4739a377155598611657c5388366a85838e6eb9 - 0.0% (157 Bytes)


History
2026-10-25 14:18:00 UTC

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

2026-10-25 14:18:00 UTC

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

2026-10-25 14:18:00 UTC

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

2026-10-25 14:18:03 UTC

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

2026-10-25 14:18:03 UTC

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

2026-10-26 23:24:45 UTC (buildkit.dockerfile.v0)

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

2026-10-26 23:24:45 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-10-26 23:24:45 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.15

2026-10-26 23:24:52 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1d09a9d591f97fe22fb089ea382d46c6be17c7b32e2bd18ebfcc1a17a0948d91'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_aarch64_linux_21.0.12.15.tar.gz'; ;; amd64|x86_64) ESUM='5b62b53d61bde7e1b4901abea77b18c03e936234c37a9206f473d093f5e46d00'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_x64_linux_21.0.12.15.tar.gz'; ;; ppc64el|ppc64le) ESUM='97113620ec93e32dad8efee6f1e221c6ca7af201d632bd2bb2b1484fbd4483d5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.15.tar.gz'; ;; s390x) ESUM='e0b8ec4011a08ed43c561e20e2f5f8958a410d32074d958de77bcb2a76745533'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_s390x_linux_21.0.12.15.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-10-26 23:24:52 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-10-26 23:24:52 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-10-26 23:26:07 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-11-03 23:14:46 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-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 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-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:14:46 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Content Digest

sha256:60ffedebfdb05bbc198cfef89ebc64fd68049d5c563a7f57dc26d3668d52f445

Created

2026-11-04 00:20:55 UTC

Size

320 MB


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.15

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:400d78a2b842f2bd938ae79326cc66475d11b949ac6b2acbfbc7709090964eb8 - 10.24% (32.8 MB)

[#001] sha256:ff521d53891f341c30e3f74c5f9114b94bf18b182129459638d3daf45bbccccd - 4.1% (13.1 MB)

[#002] sha256:0b5a0f997e5d1271301f8cada6bce3113a5f5165df97eb122197b892bcea3875 - 73.17% (234 MB)

[#003] sha256:d2ab0561d58e025423e22bf890a052ddeb30a2455ecb417e07209277a1be11ce - 1.58% (5.05 MB)

[#004] sha256:8fb51c0e50692611f45795a4daa2a1f4fd6049368b579897a30e040358f3b639 - 7.93% (25.4 MB)

[#005] sha256:f409d6de02a058853e8c1297bf5b4ea5d6f9e8413db8f10056b4a871a7d8ed82 - 3.0% (9.59 MB)

[#006] sha256:3934c1334b0c2d7908fedb8bbad4f07720cbcdd1ac93543340121837152d9f3c - 0.0% (852 Bytes)

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


History
2026-10-25 14:18:35 UTC

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

2026-10-25 14:18:35 UTC

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

2026-10-25 14:18:35 UTC

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

2026-10-25 14:18:39 UTC

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

2026-10-25 14:18:39 UTC

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

2026-10-27 19:07:12 UTC (buildkit.dockerfile.v0)

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

2026-10-27 19:07:12 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-10-27 19:07:12 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.15

2026-10-27 19:12:14 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1d09a9d591f97fe22fb089ea382d46c6be17c7b32e2bd18ebfcc1a17a0948d91'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_aarch64_linux_21.0.12.15.tar.gz'; ;; amd64|x86_64) ESUM='5b62b53d61bde7e1b4901abea77b18c03e936234c37a9206f473d093f5e46d00'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_x64_linux_21.0.12.15.tar.gz'; ;; ppc64el|ppc64le) ESUM='97113620ec93e32dad8efee6f1e221c6ca7af201d632bd2bb2b1484fbd4483d5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.15.tar.gz'; ;; s390x) ESUM='e0b8ec4011a08ed43c561e20e2f5f8958a410d32074d958de77bcb2a76745533'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_s390x_linux_21.0.12.15.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-10-27 19:12:14 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-10-27 19:12:14 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-10-27 19:13:45 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-11-04 00:20:51 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-11-04 00:20:54 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-11-04 00:20:54 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:54 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:54 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-11-04 00:20:54 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-11-04 00:20:54 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

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

2026-11-04 00:20:55 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Details
Content Digest

sha256:88b3d320d0f5e8c6cc5a95e8f9650f082f1dd2bba2c14428c2e232d31baeed45

Created

2026-11-03 23:19:06 UTC

Size

314 MB


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.15

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:f0fdb9cf963ef02d3c2868640dfc39eba181814f056a5ff58b2befec68fae0f7 - 9.09% (28.6 MB)

[#001] sha256:c5a54c74d85f10a6313e960fcdaea235b756e25a40d01da161ee3ef85d443429 - 3.98% (12.5 MB)

[#002] sha256:31137308f9c0243c5cd3cdbce673ddd84a7e0e350fdbfddc0a1a915fb18e6ea5 - 74.67% (235 MB)

[#003] sha256:1e37b09d2567ea37992183c5eed170985a2f0d2c591e97f974008d345d042350 - 2.0% (6.28 MB)

[#004] sha256:8a767e5623cb1378ca0eba5eb91acce07a73719212bddff6135050592137b66f - 7.2% (22.6 MB)

[#005] sha256:6d365745cbbcb75e7dc702dcb2e72be3c29a5616814b0889dd926e817e4bfe84 - 3.05% (9.59 MB)

[#006] sha256:fb5d9e8e58933ae61057c1fbc616ac17cd9fe27184277076ab39ad3c7f7a0537 - 0.0% (852 Bytes)

[#007] sha256:10b1fd33700e497a057448d77212ff241bcc87c291424943b14bb2f4f34f84ff - 0.0% (154 Bytes)


History
2026-10-25 14:17:59 UTC

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

2026-10-25 14:17:59 UTC

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

2026-10-25 14:17:59 UTC

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

2026-10-25 14:18:00 UTC

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

2026-10-25 14:18:01 UTC

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

2026-10-26 23:49:44 UTC (buildkit.dockerfile.v0)

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

2026-10-26 23:49:44 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-10-26 23:49:44 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=21.0.12.15

2026-10-26 23:52:58 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1d09a9d591f97fe22fb089ea382d46c6be17c7b32e2bd18ebfcc1a17a0948d91'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_aarch64_linux_21.0.12.15.tar.gz'; ;; amd64|x86_64) ESUM='5b62b53d61bde7e1b4901abea77b18c03e936234c37a9206f473d093f5e46d00'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_x64_linux_21.0.12.15.tar.gz'; ;; ppc64el|ppc64le) ESUM='97113620ec93e32dad8efee6f1e221c6ca7af201d632bd2bb2b1484fbd4483d5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_ppc64le_linux_21.0.12.15.tar.gz'; ;; s390x) ESUM='e0b8ec4011a08ed43c561e20e2f5f8958a410d32074d958de77bcb2a76745533'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.12.15/ibm-semeru-open-jdk_s390x_linux_21.0.12.15.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-10-26 23:52:58 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-10-26 23:52:58 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-10-26 23:54:03 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-11-03 23:18:59 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-11-03 23:19:01 UTC (buildkit.dockerfile.v0)

LABEL org.opencontainers.image.title=Apache Maven

2026-11-03 23:19:01 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:01 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:01 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-11-03 23:19:01 UTC (buildkit.dockerfile.v0)

ENV MAVEN_HOME=/usr/share/maven

2026-11-03 23:19:01 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:04 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:06 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:06 UTC (buildkit.dockerfile.v0)

ARG USER_HOME_DIR=/root

2026-11-03 23:19:06 UTC (buildkit.dockerfile.v0)

ENV MAVEN_CONFIG=/root/.m2

2026-11-03 23:19:06 UTC (buildkit.dockerfile.v0)

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

2026-11-03 23:19:06 UTC (buildkit.dockerfile.v0)

CMD ["mvn"]

Danger Zone
Delete Tag

Please be careful as this will not just delete the reference but also the actual content!

For example when you have latest and v1.2.3 both pointing to the same image
the deletion of latest will also permanently remove v1.2.3.