2026-02-08 14:14:40 UTC
247 MB
/root/.halo2
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_VERSIONjdk-21.0.9+10_openj9-0.56.0
JVM_OPTS LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
PATH/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SPRING_CONFIG_LOCATIONoptional:classpath:/;optional:file:/root/.halo2/
TZAsia/Shanghai
[#000] sha256:a3629ac5b9f4680dc2032439ff2354e73b06aecc2e68f0035a2d7c001c8b4114 - 11.47% (28.3 MB)
[#001] sha256:61bc454e75d07eb2df1cfcd000b45964f4aef8285c3020cdb55339ca55aaed1a - 4.94% (12.2 MB)
[#002] sha256:f168fd6160eac32a86899657a1ce6baae6dafc7a6a1b52dcc09f6c1ed8e2c4af - 23.09% (57.1 MB)
[#003] sha256:ba689e11904a1ba9a71ed0f334beb765a18150026a2b012af8a492c52b0da169 - 2.03% (5.01 MB)
[#004] sha256:0f74d165f678b858e2ba51129431406bc5f41f3afffbeec3e093c3011c5bf117 - 0.0% (101 Bytes)
[#005] sha256:f7a3588094d07785ab70cf4eb5731f6dca8b2cb123bec8d56d6d028eb8e0580e - 50.81% (126 MB)
[#006] sha256:53a153d75207b4919b51e3f25afc73c3ac18606e2260b4eef78b0479459e530b - 0.05% (130 KB)
[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#008] sha256:b8f05946a15e08552a61f20a4ad630d0b095fcba175a7c48dcd87e68302f3df3 - 7.61% (18.8 MB)
[#009] sha256:94284b09212bc1b63d0ae70fdf82987687c36dbd7180403893d93d7a0659b585 - 0.0% (193 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2026-01-13 05:37:25 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2026-01-13 05:37:25 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2026-01-13 05:37:25 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2026-01-13 05:37:27 UTC/bin/sh -c #(nop) ADD file:3077ee44db3cc7d38740d60a05c81418dd3825a007db473658464f52689e867b in /
2026-01-13 05:37:27 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2026-01-15 22:28:28 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2026-01-15 22:28:28 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-01-15 22:28:28 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.9+10_openj9-0.56.0
2026-01-15 22:28:30 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='ac8c6c5aa3c345e14e82966972040b479d672c12e5cd0eaa52d8b38e6bdea40c'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_aarch64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; amd64|x86_64) ESUM='6b3022f3d286b2fde9a964028da637a5ad9a93b1028741dcb72aa3bca49c83d2'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_x64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='876af8243616745796762539816cdb37c194e4b5942398277d6ccd35e96e3dcc'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_ppc64le_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; s390x) ESUM='e7828369bf76eb25426b807c039974f067888e1f67e9e461274407675946738e'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_s390x_linux_21.0.9_10_openj9-0.56.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
2026-01-15 22:28:30 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-01-15 22:28:30 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-01-15 22:29:01 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; TOMCAT_CHECKSUM="fc55589f28bf6659928167461c741649b6005b64285dd81df05bb5ee40f4c6de59b8ee3af84ff756ae1513fc47f5f73070e29313b555e27f096f25881c69841d"; TOMCAT_VERSION="9.0.112"; 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 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
2026-02-08 14:14:30 UTC (buildkit.dockerfile.v0)LABEL maintainer=johnniang <[email protected]>
2026-02-08 14:14:30 UTC (buildkit.dockerfile.v0)WORKDIR /application
2026-02-08 14:14:39 UTC (buildkit.dockerfile.v0)COPY application/dependencies/ ./ # buildkit
2026-02-08 14:14:39 UTC (buildkit.dockerfile.v0)COPY application/spring-boot-loader/ ./ # buildkit
2026-02-08 14:14:39 UTC (buildkit.dockerfile.v0)COPY application/snapshot-dependencies/ ./ # buildkit
2026-02-08 14:14:40 UTC (buildkit.dockerfile.v0)COPY application/application/ ./ # buildkit
2026-02-08 14:14:40 UTC (buildkit.dockerfile.v0)ENV JVM_OPTS= HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai
2026-02-08 14:14:40 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit
2026-02-08 14:14:40 UTC (buildkit.dockerfile.v0)EXPOSE [8090/tcp]
2026-02-08 14:14:40 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["sh" "-c" "java ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]
2026-02-08 14:15:42 UTC
244 MB
/root/.halo2
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_VERSIONjdk-21.0.9+10_openj9-0.56.0
JVM_OPTS LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
PATH/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SPRING_CONFIG_LOCATIONoptional:classpath:/;optional:file:/root/.halo2/
TZAsia/Shanghai
[#000] sha256:36bf709aa36d66b784b0ba1aa3276848f28501175eeb4d7a310b1a98578f8558 - 11.26% (27.5 MB)
[#001] sha256:a2bc45546de032b58b68608da2dcaaf0b72ec44913f59faab5a535c61cef422b - 5.01% (12.2 MB)
[#002] sha256:1a3c16ab9cf21377b79668dff5ebcf8d961a67e58b4d7d9790d51e5d10ad5438 - 22.66% (55.4 MB)
[#003] sha256:86745d9879db34a38aefe8e76211769baab3987fe00473c7f2082e14a412963c - 1.96% (4.8 MB)
[#004] sha256:7ab213d106ca0aafaf7aec4feb4b2a04dad1a1cc87fec75c46a9f19582aeec05 - 0.0% (101 Bytes)
[#005] sha256:1c2c28664a651c7a82379ae6b116660efd913944eb0bae56877938898fbb2e32 - 51.37% (126 MB)
[#006] sha256:179a2deead0318b5e36f131b62c7009c7c4d1ea89174c01487df95d7454aa0f2 - 0.05% (130 KB)
[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#008] sha256:1e502078a4efee398a7214ec6265aff3ed252c07642f6f4c20939e6e6a41fa2a - 7.69% (18.8 MB)
[#009] sha256:64a2b452a7a0b97f02ff15b9690a3af41603c95b266f9d0083b78088c6ed4591 - 0.0% (191 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2026-01-13 05:40:13 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2026-01-13 05:40:13 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2026-01-13 05:40:13 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2026-01-13 05:40:17 UTC/bin/sh -c #(nop) ADD file:6089c6bede9eca8ec4f424e5798a0ae0712a6fe38c9b97f9afb9d24d9675024e in /
2026-01-13 05:40:17 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2026-01-15 22:27:15 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2026-01-15 22:27:15 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-01-15 22:27:15 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.9+10_openj9-0.56.0
2026-01-15 22:30:28 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='ac8c6c5aa3c345e14e82966972040b479d672c12e5cd0eaa52d8b38e6bdea40c'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_aarch64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; amd64|x86_64) ESUM='6b3022f3d286b2fde9a964028da637a5ad9a93b1028741dcb72aa3bca49c83d2'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_x64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='876af8243616745796762539816cdb37c194e4b5942398277d6ccd35e96e3dcc'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_ppc64le_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; s390x) ESUM='e7828369bf76eb25426b807c039974f067888e1f67e9e461274407675946738e'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_s390x_linux_21.0.9_10_openj9-0.56.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
2026-01-15 22:30:28 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-01-15 22:30:28 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-01-15 22:30:59 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; TOMCAT_CHECKSUM="fc55589f28bf6659928167461c741649b6005b64285dd81df05bb5ee40f4c6de59b8ee3af84ff756ae1513fc47f5f73070e29313b555e27f096f25881c69841d"; TOMCAT_VERSION="9.0.112"; 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 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
2026-02-08 14:14:32 UTC (buildkit.dockerfile.v0)LABEL maintainer=johnniang <[email protected]>
2026-02-08 14:14:32 UTC (buildkit.dockerfile.v0)WORKDIR /application
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)COPY application/dependencies/ ./ # buildkit
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)COPY application/spring-boot-loader/ ./ # buildkit
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)COPY application/snapshot-dependencies/ ./ # buildkit
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)COPY application/application/ ./ # buildkit
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)ENV JVM_OPTS= HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)EXPOSE [8090/tcp]
2026-02-08 14:15:42 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["sh" "-c" "java ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]
2026-02-08 14:15:31 UTC
253 MB
/root/.halo2
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_VERSIONjdk-21.0.9+10_openj9-0.56.0
JVM_OPTS LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
PATH/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SPRING_CONFIG_LOCATIONoptional:classpath:/;optional:file:/root/.halo2/
TZAsia/Shanghai
[#000] sha256:0dea13cf1fe062734821309e5f773a18c9ad629d9e93e3eba340bea036bccd8a - 12.93% (32.7 MB)
[#001] sha256:247743b74112587ede3172e78c813d972a5ddbe7e8f93b8d53a20108000903b9 - 5.2% (13.2 MB)
[#002] sha256:9c541dc5e7e21324d942f6c95f45ab1a48123d72dde4c262cd8f5b9075a55e20 - 23.26% (58.9 MB)
[#003] sha256:9b0d817c806c537243329fc05ad41b2400ed6116589be0c4bc49f5b20876641d - 1.5% (3.8 MB)
[#004] sha256:7ab213d106ca0aafaf7aec4feb4b2a04dad1a1cc87fec75c46a9f19582aeec05 - 0.0% (101 Bytes)
[#005] sha256:cfba3cc9fb0d2bfc142f41a1967110dcf4bf8f47d373f9bbb0fbf02133971473 - 49.63% (126 MB)
[#006] sha256:3ecb16f53fe0fbeb0e7715b241e890d94f223d62711e36108cf0f8935249ff34 - 0.05% (130 KB)
[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#008] sha256:660b3fb5386eff496823622693e50406a7e8f0445ec6469256936fd8a60e6182 - 7.43% (18.8 MB)
[#009] sha256:db23b49c0712dab6fac5d58b9419dbb859f03ce51004f4b1d7098a9cf4a555d3 - 0.0% (192 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2026-01-13 05:39:44 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2026-01-13 05:39:44 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2026-01-13 05:39:44 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2026-01-13 05:39:47 UTC/bin/sh -c #(nop) ADD file:2f07f2a41a0f9535d0bb4dbf76ba28288335a19d601419d55d8004fa2b0faf12 in /
2026-01-13 05:39:48 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2026-01-15 22:26:55 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2026-01-15 22:26:55 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-01-15 22:26:55 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.9+10_openj9-0.56.0
2026-01-15 22:42:13 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='ac8c6c5aa3c345e14e82966972040b479d672c12e5cd0eaa52d8b38e6bdea40c'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_aarch64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; amd64|x86_64) ESUM='6b3022f3d286b2fde9a964028da637a5ad9a93b1028741dcb72aa3bca49c83d2'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_x64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='876af8243616745796762539816cdb37c194e4b5942398277d6ccd35e96e3dcc'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_ppc64le_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; s390x) ESUM='e7828369bf76eb25426b807c039974f067888e1f67e9e461274407675946738e'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_s390x_linux_21.0.9_10_openj9-0.56.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
2026-01-15 22:42:13 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-01-15 22:42:13 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-01-15 22:42:47 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; TOMCAT_CHECKSUM="fc55589f28bf6659928167461c741649b6005b64285dd81df05bb5ee40f4c6de59b8ee3af84ff756ae1513fc47f5f73070e29313b555e27f096f25881c69841d"; TOMCAT_VERSION="9.0.112"; 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 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
2026-02-08 14:14:31 UTC (buildkit.dockerfile.v0)LABEL maintainer=johnniang <[email protected]>
2026-02-08 14:14:31 UTC (buildkit.dockerfile.v0)WORKDIR /application
2026-02-08 14:15:30 UTC (buildkit.dockerfile.v0)COPY application/dependencies/ ./ # buildkit
2026-02-08 14:15:30 UTC (buildkit.dockerfile.v0)COPY application/spring-boot-loader/ ./ # buildkit
2026-02-08 14:15:30 UTC (buildkit.dockerfile.v0)COPY application/snapshot-dependencies/ ./ # buildkit
2026-02-08 14:15:31 UTC (buildkit.dockerfile.v0)COPY application/application/ ./ # buildkit
2026-02-08 14:15:31 UTC (buildkit.dockerfile.v0)ENV JVM_OPTS= HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai
2026-02-08 14:15:31 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit
2026-02-08 14:15:31 UTC (buildkit.dockerfile.v0)EXPOSE [8090/tcp]
2026-02-08 14:15:31 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["sh" "-c" "java ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]
2026-02-08 14:15:41 UTC
247 MB
/root/.halo2
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_VERSIONjdk-21.0.9+10_openj9-0.56.0
JVM_OPTS LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
PATH/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
SPRING_CONFIG_LOCATIONoptional:classpath:/;optional:file:/root/.halo2/
TZAsia/Shanghai
[#000] sha256:88318e41cf944fd93c8b2fdfaeb1378b17ed0e2440ef9811f9820449bf19a6ad - 11.55% (28.5 MB)
[#001] sha256:960e5a8a4758a7bb1786afff288a419a9926d43f49ae7f0b06153b15db8f8dbb - 5.07% (12.5 MB)
[#002] sha256:d50ab2229db133aff4207de59069c7b275852eb248e75e60bc0fcd70103a87e6 - 22.74% (56.1 MB)
[#003] sha256:793cb9e89e307842dd9064ba5011d7b6d068e347c8f09be72e3fedfef58c8389 - 2.11% (5.2 MB)
[#004] sha256:7ab213d106ca0aafaf7aec4feb4b2a04dad1a1cc87fec75c46a9f19582aeec05 - 0.0% (101 Bytes)
[#005] sha256:b936b082107f36ef495e76dc0f764c27dadf1d29ccebc830e95b50b37896a270 - 50.86% (126 MB)
[#006] sha256:3591b9b9e6cf54f34796054597a504366c294ba91ac9fb7250b064554968d6d4 - 0.05% (130 KB)
[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#008] sha256:6dc1a9370f0dc660710e317e4180d4abd98581602f029dcf1805caf0adb0a534 - 7.61% (18.8 MB)
[#009] sha256:feddb7a83b822a1a6b0504274606497c8b76c352679b7c9d7c53e85bdf629918 - 0.0% (191 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2026-01-13 06:29:20 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2026-01-13 06:29:20 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2026-01-13 06:29:20 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2026-01-13 06:29:22 UTC/bin/sh -c #(nop) ADD file:55a7874afa0094b7b4c6edc68b58164a34177fa761bc6e673ddb0c846b91f26f in /
2026-01-13 06:29:22 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2026-01-15 22:12:15 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2026-01-15 22:12:15 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-01-15 22:12:15 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.9+10_openj9-0.56.0
2026-01-15 22:16:28 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='ac8c6c5aa3c345e14e82966972040b479d672c12e5cd0eaa52d8b38e6bdea40c'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_aarch64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; amd64|x86_64) ESUM='6b3022f3d286b2fde9a964028da637a5ad9a93b1028741dcb72aa3bca49c83d2'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_x64_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='876af8243616745796762539816cdb37c194e4b5942398277d6ccd35e96e3dcc'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_ppc64le_linux_21.0.9_10_openj9-0.56.0.tar.gz'; ;; s390x) ESUM='e7828369bf76eb25426b807c039974f067888e1f67e9e461274407675946738e'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.9%2B10_openj9-0.56.0/ibm-semeru-open-jre_s390x_linux_21.0.9_10_openj9-0.56.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
2026-01-15 22:16:28 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-01-15 22:16:28 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-01-15 22:16:59 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; TOMCAT_CHECKSUM="fc55589f28bf6659928167461c741649b6005b64285dd81df05bb5ee40f4c6de59b8ee3af84ff756ae1513fc47f5f73070e29313b555e27f096f25881c69841d"; TOMCAT_VERSION="9.0.112"; 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 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
2026-02-08 14:14:31 UTC (buildkit.dockerfile.v0)LABEL maintainer=johnniang <[email protected]>
2026-02-08 14:14:31 UTC (buildkit.dockerfile.v0)WORKDIR /application
2026-02-08 14:15:39 UTC (buildkit.dockerfile.v0)COPY application/dependencies/ ./ # buildkit
2026-02-08 14:15:40 UTC (buildkit.dockerfile.v0)COPY application/spring-boot-loader/ ./ # buildkit
2026-02-08 14:15:40 UTC (buildkit.dockerfile.v0)COPY application/snapshot-dependencies/ ./ # buildkit
2026-02-08 14:15:40 UTC (buildkit.dockerfile.v0)COPY application/application/ ./ # buildkit
2026-02-08 14:15:40 UTC (buildkit.dockerfile.v0)ENV JVM_OPTS= HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai
2026-02-08 14:15:41 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit
2026-02-08 14:15:41 UTC (buildkit.dockerfile.v0)EXPOSE [8090/tcp]
2026-02-08 14:15:41 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["sh" "-c" "java ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]