Namespace
halohub
Image / Tag
halo-pro:sha-698befe
Content Digest
sha256:205b6275c91b7fe062ae456d3bb985476b3d31338a342ba01147503339e8ddeb
Details
Created

2025-03-13 10:33:47 UTC

Size

220 MB

Content Digest
Labels
  • maintainer
    johnniang <[email protected]>
  • org.opencontainers.image.created
    2025-03-13T10:32:51.873Z
  • org.opencontainers.image.description
  • org.opencontainers.image.licenses
    GPL-3.0
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.revision
    698befeab65df63d9ffb46ccfc2eadb43153d8a5
  • org.opencontainers.image.source
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.title
    halo-pro
  • org.opencontainers.image.url
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.version
    2

Environment
HALO_WORK_DIR

/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_VERSION

jdk-21.0.6+7_openj9-0.49.0

JVM_OPTS

-Xmx256m -Xms256m

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

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

SPRING_CONFIG_LOCATION

optional:classpath:/;optional:file:/root/.halo2/

TZ

Asia/Shanghai


Layers

[#000] sha256:5a7813e071bfadf18aaa6ca8318be4824a9b6297b3240f2cc84c1db6f4113040 - 12.91% (28.4 MB)

[#001] sha256:4843e525b8b7360668a55bbbc863b29a68c6c6c644f23c2de65e0c514a1eabd8 - 8.19% (18 MB)

[#002] sha256:b5359efb5f08488a950f6d7e95a344432d65b9f96cc3839e38f7d328d6791f0c - 24.44% (53.7 MB)

[#003] sha256:ee32ce2beb8c082b44ed95af8da34dc98b9d4f60cbd038490f49a72ffe9ad078 - 2.25% (4.96 MB)

[#004] sha256:c7d98c349ff9168dac2d48609a543e19ab2514d05279758fc61c36477cced68e - 0.0% (99 Bytes)

[#005] sha256:c635e07f036746a4970e75f994191231c0fe998fb0cc90a37628dc7faeaf8c72 - 46.71% (103 MB)

[#006] sha256:d9e179ef6211f980f89c0e0640e433b43977b520f3825ad575b220ee91b39d36 - 0.06% (130 KB)

[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#008] sha256:cef506325b60ab6c839c238bde5725d829677c283e4f317d957f3b6ad03c88e3 - 5.45% (12 MB)

[#009] sha256:af8d570f13b0f314a14681a343fdd1d32de525f2e4f5fbfaa1a3f342f8adcf94 - 0.0% (192 Bytes)


History
2025-01-27 04:14:00 UTC

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

2025-01-27 04:14:00 UTC

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

2025-01-27 04:14:00 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-01-27 04:14:00 UTC

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

2025-01-27 04:14:03 UTC

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

2025-01-27 04:14:03 UTC

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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-21.0.6+7_openj9-0.49.0

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1090db3f7b30b4a45e3d5f228ac529ace87000bd9b342d91a639f0181a0058f5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_aarch64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; amd64|x86_64) ESUM='cca7d1599ff83063dd16965dcbf91915a7654e5086f3b3b71744adf7769d11de'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_x64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='ece962ee7ce419e25048a89228b61c4ce8c318ec6fade470484d6537bb87ea3f'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_ppc64le_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; s390x) ESUM='ab2070fa866e86978a5a2753dfc6128fc2012b97bf4e95d888d3dda916844a52'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_s390x_linux_21.0.6_7_openj9-0.49.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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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="bf406b3e288e1732d82d08f54e160095451a6cc969f72adf395c074d6d08893ef1ccd2afcd55f01ca8e54131f587c88055832f36330a1ede0cc2f84440cf54df"; TOMCAT_DWNLD_URL="https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.99/bin/apache-tomcat-9.0.99.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

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

LABEL maintainer=johnniang <[email protected]>

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

WORKDIR /application

2025-03-13 10:33:46 UTC (buildkit.dockerfile.v0)

COPY application/dependencies/ ./ # buildkit

2025-03-13 10:33:46 UTC (buildkit.dockerfile.v0)

COPY application/spring-boot-loader/ ./ # buildkit

2025-03-13 10:33:46 UTC (buildkit.dockerfile.v0)

COPY application/snapshot-dependencies/ ./ # buildkit

2025-03-13 10:33:47 UTC (buildkit.dockerfile.v0)

COPY application/application/ ./ # buildkit

2025-03-13 10:33:47 UTC (buildkit.dockerfile.v0)

ENV JVM_OPTS=-Xmx256m -Xms256m HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai

2025-03-13 10:33:47 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2025-03-13 10:33:47 UTC (buildkit.dockerfile.v0)

EXPOSE map[8090/tcp:{}]

2025-03-13 10:33:47 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["sh" "-c" "java -Dreactor.schedulers.defaultBoundedElasticOnVirtualThreads=true ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]

Details
Created

2025-03-13 10:34:38 UTC

Size

215 MB

Content Digest
Labels
  • maintainer
    johnniang <[email protected]>
  • org.opencontainers.image.created
    2025-03-13T10:32:51.873Z
  • org.opencontainers.image.description
  • org.opencontainers.image.licenses
    GPL-3.0
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.revision
    698befeab65df63d9ffb46ccfc2eadb43153d8a5
  • org.opencontainers.image.source
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.title
    halo-pro
  • org.opencontainers.image.url
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.version
    2

Environment
HALO_WORK_DIR

/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_VERSION

jdk-21.0.6+7_openj9-0.49.0

JVM_OPTS

-Xmx256m -Xms256m

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

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

SPRING_CONFIG_LOCATION

optional:classpath:/;optional:file:/root/.halo2/

TZ

Asia/Shanghai


Layers

[#000] sha256:5b17151e9710ed47471b3928b05325fa4832121a395b9647b7e50d3993e17ce0 - 12.81% (27.6 MB)

[#001] sha256:ea146e09d356aec84ab31d8a31a3104c0143de727fb2c7ec63230439dfe21676 - 8.28% (17.8 MB)

[#002] sha256:a9a867dbc1bfb32ed45fd7fdbb26d8870ab9fbf6b7b651ea876bc2976b87cc85 - 23.38% (50.3 MB)

[#003] sha256:4e392f54bf16609d048e1eb973a0222f4373b2094072e4ffb1ca90c9d5a5f560 - 2.17% (4.68 MB)

[#004] sha256:c7d98c349ff9168dac2d48609a543e19ab2514d05279758fc61c36477cced68e - 0.0% (99 Bytes)

[#005] sha256:7895cf1a065d5a516b4b046860a6df4e79cf1172018806e19b3546657ca9f22d - 47.73% (103 MB)

[#006] sha256:b97470dd07058f96e28a69b4a631571456896c001b1eab1598605376a979a3ba - 0.06% (130 KB)

[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#008] sha256:3489cd3bf8815f78942de90ce1f6150ddec9a8b22da4f7bf4a13a9b9432005d4 - 5.56% (12 MB)

[#009] sha256:ea88693ca4c6b6b22a88ae5ce586cc5bb5f4725e0159b55b849e3b099cc41a6e - 0.0% (193 Bytes)


History
2025-01-27 04:14:51 UTC

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

2025-01-27 04:14:51 UTC

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

2025-01-27 04:14:51 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-01-27 04:14:51 UTC

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

2025-01-27 04:14:54 UTC

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

2025-01-27 04:14:54 UTC

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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-21.0.6+7_openj9-0.49.0

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1090db3f7b30b4a45e3d5f228ac529ace87000bd9b342d91a639f0181a0058f5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_aarch64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; amd64|x86_64) ESUM='cca7d1599ff83063dd16965dcbf91915a7654e5086f3b3b71744adf7769d11de'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_x64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='ece962ee7ce419e25048a89228b61c4ce8c318ec6fade470484d6537bb87ea3f'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_ppc64le_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; s390x) ESUM='ab2070fa866e86978a5a2753dfc6128fc2012b97bf4e95d888d3dda916844a52'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_s390x_linux_21.0.6_7_openj9-0.49.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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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="bf406b3e288e1732d82d08f54e160095451a6cc969f72adf395c074d6d08893ef1ccd2afcd55f01ca8e54131f587c88055832f36330a1ede0cc2f84440cf54df"; TOMCAT_DWNLD_URL="https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.99/bin/apache-tomcat-9.0.99.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

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

LABEL maintainer=johnniang <[email protected]>

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

WORKDIR /application

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

COPY application/dependencies/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

COPY application/spring-boot-loader/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

COPY application/snapshot-dependencies/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

COPY application/application/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

ENV JVM_OPTS=-Xmx256m -Xms256m HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

EXPOSE map[8090/tcp:{}]

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["sh" "-c" "java -Dreactor.schedulers.defaultBoundedElasticOnVirtualThreads=true ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]

Details
Created

2025-03-13 10:34:30 UTC

Size

226 MB

Content Digest
Labels
  • maintainer
    johnniang <[email protected]>
  • org.opencontainers.image.created
    2025-03-13T10:32:51.873Z
  • org.opencontainers.image.description
  • org.opencontainers.image.licenses
    GPL-3.0
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.revision
    698befeab65df63d9ffb46ccfc2eadb43153d8a5
  • org.opencontainers.image.source
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.title
    halo-pro
  • org.opencontainers.image.url
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.version
    2

Environment
HALO_WORK_DIR

/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_VERSION

jdk-21.0.6+7_openj9-0.49.0

JVM_OPTS

-Xmx256m -Xms256m

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

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

SPRING_CONFIG_LOCATION

optional:classpath:/;optional:file:/root/.halo2/

TZ

Asia/Shanghai


Layers

[#000] sha256:63bb950362326716a27cf0240223ca9b5b5528e2922804f1973429bcc74e3262 - 14.53% (32.8 MB)

[#001] sha256:1ce86d149e858b2ab06953d2952bca568a72783b46d358419393876d6850780e - 8.73% (19.7 MB)

[#002] sha256:c095ff03f81fe7bfbd93ee6ecdc4a83cc782e4077de4763100a867ce428ce8c7 - 24.23% (54.7 MB)

[#003] sha256:d584d1379856233f1faced2eab6b47e15c43b345bca2b5c6035f1cb97bd6c591 - 1.67% (3.78 MB)

[#004] sha256:c7d98c349ff9168dac2d48609a543e19ab2514d05279758fc61c36477cced68e - 0.0% (99 Bytes)

[#005] sha256:7d516693a1ecc3fb939f711b98d2995e70cd60eb8dbfb7067880f4f9de38a81a - 45.48% (103 MB)

[#006] sha256:7aa147d41d25804bddc9a3f6f1d051d864fa63140b7db666c69e406ee5d2ae3e - 0.06% (130 KB)

[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#008] sha256:6913139d8096a03dd0831a8ca98b614486fd1774c8748f922829d62439f5ae95 - 5.3% (12 MB)

[#009] sha256:c1677a3006fb14bc0a71f0c254af4222c27348cbcc71a602d4b7279f099c4c33 - 0.0% (192 Bytes)


History
2025-01-27 04:16:03 UTC

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

2025-01-27 04:16:03 UTC

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

2025-01-27 04:16:03 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-01-27 04:16:03 UTC

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

2025-01-27 04:16:07 UTC

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

2025-01-27 04:16:07 UTC

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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-21.0.6+7_openj9-0.49.0

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1090db3f7b30b4a45e3d5f228ac529ace87000bd9b342d91a639f0181a0058f5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_aarch64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; amd64|x86_64) ESUM='cca7d1599ff83063dd16965dcbf91915a7654e5086f3b3b71744adf7769d11de'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_x64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='ece962ee7ce419e25048a89228b61c4ce8c318ec6fade470484d6537bb87ea3f'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_ppc64le_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; s390x) ESUM='ab2070fa866e86978a5a2753dfc6128fc2012b97bf4e95d888d3dda916844a52'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_s390x_linux_21.0.6_7_openj9-0.49.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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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="bf406b3e288e1732d82d08f54e160095451a6cc969f72adf395c074d6d08893ef1ccd2afcd55f01ca8e54131f587c88055832f36330a1ede0cc2f84440cf54df"; TOMCAT_DWNLD_URL="https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.99/bin/apache-tomcat-9.0.99.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

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

LABEL maintainer=johnniang <[email protected]>

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

WORKDIR /application

2025-03-13 10:34:29 UTC (buildkit.dockerfile.v0)

COPY application/dependencies/ ./ # buildkit

2025-03-13 10:34:29 UTC (buildkit.dockerfile.v0)

COPY application/spring-boot-loader/ ./ # buildkit

2025-03-13 10:34:29 UTC (buildkit.dockerfile.v0)

COPY application/snapshot-dependencies/ ./ # buildkit

2025-03-13 10:34:30 UTC (buildkit.dockerfile.v0)

COPY application/application/ ./ # buildkit

2025-03-13 10:34:30 UTC (buildkit.dockerfile.v0)

ENV JVM_OPTS=-Xmx256m -Xms256m HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai

2025-03-13 10:34:30 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2025-03-13 10:34:30 UTC (buildkit.dockerfile.v0)

EXPOSE map[8090/tcp:{}]

2025-03-13 10:34:30 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["sh" "-c" "java -Dreactor.schedulers.defaultBoundedElasticOnVirtualThreads=true ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]

Details
Created

2025-03-13 10:34:38 UTC

Size

218 MB

Content Digest
Labels
  • maintainer
    johnniang <[email protected]>
  • org.opencontainers.image.created
    2025-03-13T10:32:51.873Z
  • org.opencontainers.image.description
  • org.opencontainers.image.licenses
    GPL-3.0
  • org.opencontainers.image.ref.name
    ubuntu
  • org.opencontainers.image.revision
    698befeab65df63d9ffb46ccfc2eadb43153d8a5
  • org.opencontainers.image.source
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.title
    halo-pro
  • org.opencontainers.image.url
    https://github.com/lxware-dev/halo-pro
  • org.opencontainers.image.version
    2

Environment
HALO_WORK_DIR

/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_VERSION

jdk-21.0.6+7_openj9-0.49.0

JVM_OPTS

-Xmx256m -Xms256m

LANG

en_US.UTF-8

LANGUAGE

en_US:en

LC_ALL

en_US.UTF-8

PATH

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

SPRING_CONFIG_LOCATION

optional:classpath:/;optional:file:/root/.halo2/

TZ

Asia/Shanghai


Layers

[#000] sha256:8e1d25585ef2d346b71072d258a697a9d190e3c5754512c7cb978dbbe80911e6 - 13.11% (28.6 MB)

[#001] sha256:ffe362f61790c27bd61a30c1725f8d3031adcc929b78abed310b75fc1dffd809 - 8.01% (17.5 MB)

[#002] sha256:2f0e4c1a5fd09a7db4e1d44cd42b3014c15f9de57bf3fe6bfb647a32fe5d4ab8 - 24.04% (52.5 MB)

[#003] sha256:1a42d552a98556a311a75e42ff2b9fd4701254736de4e0664edaed1c1ea18c24 - 2.32% (5.06 MB)

[#004] sha256:c7d98c349ff9168dac2d48609a543e19ab2514d05279758fc61c36477cced68e - 0.0% (99 Bytes)

[#005] sha256:609237aa3c5d7bed67e50e7d97866b4289f76ee1959543e8da378c69a41203f7 - 47.0% (103 MB)

[#006] sha256:a2f31a826ffad50d405d7e37ba8e5dea5a995d83872d3f4ab21540e71ca6d86d - 0.06% (130 KB)

[#007] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)

[#008] sha256:ae5a35acbbc39a43e63001acbebe372c6ca119efe5e71689ccb58210911d9cf2 - 5.48% (12 MB)

[#009] sha256:ea88693ca4c6b6b22a88ae5ce586cc5bb5f4725e0159b55b849e3b099cc41a6e - 0.0% (193 Bytes)


History
2025-01-27 04:15:19 UTC

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

2025-01-27 04:15:19 UTC

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

2025-01-27 04:15:19 UTC

/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu

2025-01-27 04:15:19 UTC

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

2025-01-27 04:15:20 UTC

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

2025-01-27 04:15:20 UTC

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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

ENV JAVA_VERSION=jdk-21.0.6+7_openj9-0.49.0

2025-02-13 04:44:33 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in aarch64|arm64) ESUM='1090db3f7b30b4a45e3d5f228ac529ace87000bd9b342d91a639f0181a0058f5'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_aarch64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; amd64|x86_64) ESUM='cca7d1599ff83063dd16965dcbf91915a7654e5086f3b3b71744adf7769d11de'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_x64_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; ppc64el|ppc64le) ESUM='ece962ee7ce419e25048a89228b61c4ce8c318ec6fade470484d6537bb87ea3f'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_ppc64le_linux_21.0.6_7_openj9-0.49.0.tar.gz'; ;; s390x) ESUM='ab2070fa866e86978a5a2753dfc6128fc2012b97bf4e95d888d3dda916844a52'; BINARY_URL='https://github.com/ibmruntimes/semeru21-binaries/releases/download/jdk-21.0.6%2B7_openj9-0.49.0/ibm-semeru-open-jre_s390x_linux_21.0.6_7_openj9-0.49.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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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

2025-02-13 04:44:33 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="bf406b3e288e1732d82d08f54e160095451a6cc969f72adf395c074d6d08893ef1ccd2afcd55f01ca8e54131f587c88055832f36330a1ede0cc2f84440cf54df"; TOMCAT_DWNLD_URL="https://dlcdn.apache.org/tomcat/tomcat-9/v9.0.99/bin/apache-tomcat-9.0.99.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

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

LABEL maintainer=johnniang <[email protected]>

2025-03-13 10:33:36 UTC (buildkit.dockerfile.v0)

WORKDIR /application

2025-03-13 10:34:37 UTC (buildkit.dockerfile.v0)

COPY application/dependencies/ ./ # buildkit

2025-03-13 10:34:37 UTC (buildkit.dockerfile.v0)

COPY application/spring-boot-loader/ ./ # buildkit

2025-03-13 10:34:37 UTC (buildkit.dockerfile.v0)

COPY application/snapshot-dependencies/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

COPY application/application/ ./ # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

ENV JVM_OPTS=-Xmx256m -Xms256m HALO_WORK_DIR=/root/.halo2 SPRING_CONFIG_LOCATION=optional:classpath:/;optional:file:/root/.halo2/ TZ=Asia/Shanghai

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

RUN /bin/sh -c ln -sf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone # buildkit

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

EXPOSE map[8090/tcp:{}]

2025-03-13 10:34:38 UTC (buildkit.dockerfile.v0)

ENTRYPOINT ["sh" "-c" "java -Dreactor.schedulers.defaultBoundedElasticOnVirtualThreads=true ${JVM_OPTS} org.springframework.boot.loader.launch.JarLauncher ${0} ${@}"]