镜像构建历史
# 2024-08-21 02:12:59 0.00B 设置默认要执行的命令
CMD ["mvn"]
# 2024-08-21 02:12:59 0.00B 配置容器启动时运行的命令
ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"]
# 2024-08-21 02:12:59 0.00B 设置环境变量 MAVEN_CONFIG
ENV MAVEN_CONFIG=/root/.m2
# 2024-08-21 02:12:59 0.00B 定义构建参数
ARG USER_HOME_DIR=/root
# 2024-08-21 02:12:59 0.00B 定义构建参数
ARG MAVEN_VERSION=3.9.9
# 2024-08-21 02:12:59 24.00B 执行命令并创建新的镜像层
RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit
# 2024-08-21 02:12:59 0.00B 复制新文件或目录到容器中
COPY /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml # buildkit
# 2024-08-21 02:12:59 1.65KB 复制新文件或目录到容器中
COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit
# 2024-08-21 02:12:59 10.64MB 复制新文件或目录到容器中
COPY /usr/share/maven /usr/share/maven # buildkit
# 2024-08-21 02:12:59 0.00B 设置环境变量 MAVEN_HOME
ENV MAVEN_HOME=/usr/share/maven
# 2024-08-21 02:12:59 0.00B 添加元数据标签
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.
# 2024-08-21 02:12:59 0.00B 添加元数据标签
LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven
# 2024-08-21 02:12:59 0.00B 添加元数据标签
LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven
# 2024-08-21 02:12:59 0.00B 添加元数据标签
LABEL org.opencontainers.image.title=Apache Maven
# 2024-08-21 02:12:59 83.29MB 执行命令并创建新的镜像层
RUN /bin/sh -c apt-get update && apt-get install -y git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit
# 2024-08-21 02:12:59 16.78MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; unset OPENJ9_JAVA_OPTIONS; SCC_SIZE="50m"; DOWNLOAD_PATH_TOMCAT=/tmp/tomcat; INSTALL_PATH_TOMCAT=/opt/tomcat-home; TOMCAT_CHECKSUM="cbe407f17c813d9f83cab459e603df171f2e5782c3a0cdb4cfa00b0391a89cedf865c6d8972fc7e12210c69a8467ede5939f35bb0f3b41fa173b9ee83199768a"; TOMCAT_DWNLD_URL="https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.102/bin/apache-tomcat-9.0.102.tar.gz"; mkdir -p "${DOWNLOAD_PATH_TOMCAT}" "${INSTALL_PATH_TOMCAT}"; curl -LfsSo "${DOWNLOAD_PATH_TOMCAT}"/tomcat.tar.gz "${TOMCAT_DWNLD_URL}"; 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 5; "${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 5; "${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}"; if [ -d "/opt/java/.scc" ]; then chmod -R 0777 /opt/java/.scc; fi; echo "SCC generation phase completed"; # buildkit
# 2024-08-21 02:12:59 0.00B 设置环境变量 JAVA_TOOL_OPTIONS -Xshareclasses:name
ENV JAVA_TOOL_OPTIONS=-XX:+IgnoreUnrecognizedVMOptions -XX:+PortableSharedCache -XX:+IdleTuningGcOnIdle -Xshareclasses:name=openj9_system_scc,cacheDir=/opt/java/.scc,readonly,nonFatal
# 2024-08-21 02:12:59 0.00B 设置环境变量 JAVA_HOME PATH
ENV JAVA_HOME=/opt/java/openjdk PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
# 2024-08-21 02:12:59 367.31MB 执行命令并创建新的镜像层
RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='08a982b6fbca457718bc43d14f1e836d7aa93eeaec7cd308793f990f8a5755ed'; BINARY_URL='https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.15%2B6_openj9-0.51.0/ibm-semeru-open-jdk_aarch64_linux_17.0.15_6_openj9-0.51.0.tar.gz'; ;; amd64|x86_64) ESUM='7df65eeedda313cd73d28e6f46029f48b96e4d329066f0438b9b2b43aaafad59'; BINARY_URL='https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.15%2B6_openj9-0.51.0/ibm-semeru-open-jdk_x64_linux_17.0.15_6_openj9-0.51.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='41831486054fab00e1ea925b465ee162ba9ad8b65420d50ff7b3dbccd11e1542'; BINARY_URL='https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.15%2B6_openj9-0.51.0/ibm-semeru-open-jdk_ppc64le_linux_17.0.15_6_openj9-0.51.0.tar.gz'; ;; s390x) ESUM='214ad153737665e833bc0b5f67bcbefa2448e6254cec265c7e941db1162c3758'; BINARY_URL='https://github.com/ibmruntimes/semeru17-binaries/releases/download/jdk-17.0.15%2B6_openj9-0.51.0/ibm-semeru-open-jdk_s390x_linux_17.0.15_6_openj9-0.51.0.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
# 2024-08-21 02:12:59 0.00B 设置环境变量 JAVA_VERSION
ENV JAVA_VERSION=jdk-17.0.15+6_openj9-0.51.0
# 2024-08-21 02:12:59 43.39MB 执行命令并创建新的镜像层
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
# 2024-08-21 02:12:59 0.00B 设置环境变量 LANG LANGUAGE LC_ALL
ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
# 2024-08-21 02:12:59 0.00B
/bin/sh -c #(nop) CMD ["/bin/bash"]
# 2024-08-21 02:12:59 72.81MB
/bin/sh -c #(nop) ADD file:f9ee450324e6ff2c946bc9aae5cf7e35e240dbd387d8b9f5ee1ed5b8434b9894 in /
# 2024-08-21 02:12:59 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.version=20.04
# 2024-08-21 02:12:59 0.00B
/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
# 2024-08-21 02:12:59 0.00B
/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
# 2024-08-21 02:12:59 0.00B
/bin/sh -c #(nop) ARG RELEASE
镜像信息
{
"Id": "sha256:79290fc1123ca50492be0bf1e6975b71ea0582cf3d7caeb8de7a1fb5cdc7cca2",
"RepoTags": [
"maven:3.9-ibm-semeru-17-focal",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/maven:3.9-ibm-semeru-17-focal"
],
"RepoDigests": [
"maven@sha256:5151b23c64a44fca5f06b4d97fb1161a62f8feb96a4b913974b0b06ea1f39dd0",
"swr.cn-north-4.myhuaweicloud.com/ddn-k8s/docker.io/library/maven@sha256:f32c1aeaaef27f7e855f810ad8f8d3b796c6be332b543053486ee31b0f4cdf40"
],
"Parent": "",
"Comment": "buildkit.dockerfile.v0",
"Created": "2024-08-20T18:12:59Z",
"Container": "",
"ContainerConfig": null,
"DockerVersion": "",
"Author": "",
"Config": {
"Hostname": "",
"Domainname": "",
"User": "",
"AttachStdin": false,
"AttachStdout": false,
"AttachStderr": false,
"Tty": false,
"OpenStdin": false,
"StdinOnce": false,
"Env": [
"PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin",
"LANG=en_US.UTF-8",
"LANGUAGE=en_US:en",
"LC_ALL=en_US.UTF-8",
"JAVA_VERSION=jdk-17.0.15+6_openj9-0.51.0",
"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",
"MAVEN_HOME=/usr/share/maven",
"MAVEN_CONFIG=/root/.m2"
],
"Cmd": [
"mvn"
],
"Image": "",
"Volumes": null,
"WorkingDir": "",
"Entrypoint": [
"/usr/local/bin/mvn-entrypoint.sh"
],
"OnBuild": null,
"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.ref.name": "ubuntu",
"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": "20.04"
}
},
"Architecture": "amd64",
"Os": "linux",
"Size": 594225430,
"GraphDriver": {
"Data": {
"LowerDir": "/var/lib/docker/overlay2/9fb2af105fc34514d2eba16c0aa03073f568a9ad1e5aabab1f77aa7306023c89/diff:/var/lib/docker/overlay2/7f674e7b8c2d7a4b669b29120e94f31a576326b663d67945c8966401bf0827ee/diff:/var/lib/docker/overlay2/acb934dac036de7b63e8439313ce2db22379b7f8f52be59ced0b4f5bb3afece4/diff:/var/lib/docker/overlay2/15b5596721e7e8809f137bd69c188d314f88db6076f532bf1a0b1b09e2165200/diff:/var/lib/docker/overlay2/ceb41243b4fbee89fe2fa5701ee6a4c0ee774970e38f1442bb4f56ed6713d9e8/diff:/var/lib/docker/overlay2/284b8196abfbe622891fd8dd65611f4d71989836fa4299e5f479c6e0d891ab27/diff:/var/lib/docker/overlay2/ac25d9f1bbeff0dc1ee39b04b522142efb625537d24f85cdf78928af867d8b8f/diff:/var/lib/docker/overlay2/530775a8cb6dd01e38c7b6f36f12c77aa23615f19c9933395d50ebbd2978c9e3/diff",
"MergedDir": "/var/lib/docker/overlay2/15754551f03eb06d3e1048f186491bd27f55ea27be1d8dd220f990fe27864400/merged",
"UpperDir": "/var/lib/docker/overlay2/15754551f03eb06d3e1048f186491bd27f55ea27be1d8dd220f990fe27864400/diff",
"WorkDir": "/var/lib/docker/overlay2/15754551f03eb06d3e1048f186491bd27f55ea27be1d8dd220f990fe27864400/work"
},
"Name": "overlay2"
},
"RootFS": {
"Type": "layers",
"Layers": [
"sha256:470b66ea5123c93b0d5606e4213bf9e47d3d426b640d32472e4ac213186c4bb6",
"sha256:512112f4993296e8cdefc485efc605e9a821fd28b9de355179e7aef9b205852b",
"sha256:f0ebb2c8a6963b90a9403100f85a47d873f072057062a7dfca1d6e6833861926",
"sha256:afa6969f1f5be2551ec3e8061022bbb27dde603ac0603271a837337a05bfe947",
"sha256:d169452caf834c46e787b2b4100bd6441ea41eb1f6a22966c09af43f54554305",
"sha256:82066dfa820e3826a429036b27775784dc81887e828f661f7370846789802ce1",
"sha256:b82aba48b18abb6802b6a0f5575b522b518de1deccc1e0dec7d351f569ac252a",
"sha256:5f70bf18a086007016e948b04aed3b82103a36bea41755b6cddfaf10ace3c6ef",
"sha256:2a908835e7b9dada6ca22850aa7ac39f168d6c1034fbc4bd588c254a06ca40fe"
]
},
"Metadata": {
"LastTagTime": "2025-05-16T15:36:50.307719621+08:00"
}
}