2024-10-09 17:25:06 UTC
215 MB
/usr/local/tomcat
GPG_KEYS5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
JAVA_HOME/opt/java/openjdk
JAVA_VERSIONjdk-21.0.5+11
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib
PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TOMCAT_MAJOR10
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA5120e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
TOMCAT_VERSION10.1.31
[#000] sha256:ff65ddf9395be21bfe1f320b7705e539ee44c1053034f801b1a3cbbf2d0f4056 - 13.21% (28.4 MB)
[#001] sha256:1fffcd81c86b54a2beca4e50283b71ff3e781495df2a80a57a1ff84ce58a88f1 - 10.19% (21.9 MB)
[#002] sha256:23441222f0af349826b05532f55ec74fa17dad7726f8376faea5a58d981589e3 - 69.98% (150 MB)
[#003] sha256:9ad70f2fec4fe603d3d76ed525c0dcf87e60fc13a6d9d785f9b3f71afe27a39f - 0.0% (158 Bytes)
[#004] sha256:eb1faaa4cea3904c46aa0f3e2f8850c5b9ea9fa560bbcebdf9f434ab9619499b - 0.0% (2.23 KB)
[#005] sha256:9dc25b57cbbfe4e1683dd380734ed2a1d8ec61c7d0a2574f2707655f89cb0b60 - 0.0% (138 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:3cd784368d0543abb52bbfae2d08e9aa4b0b9cf16ef0bbc86fee77bd8069bf99 - 6.62% (14.2 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ADD file:34dc4f3ab7a694ecde47ff7a610be18591834c45f1d7251813267798412604e5 in /
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata 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-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.5+11
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_linux_hotspot_21.0.5_11.tar.gz'; ;; arm64) ESUM='6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.5_11.tar.gz'; ;; ppc64el) ESUM='3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.5_11.tar.gz'; ;; riscv64) ESUM='2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.5_11.tar.gz'; ;; s390x) ESUM='51a7ca42cc2e8cb5f3e7a326c28912ee84ff0791a1ca66650a8c53af07510a7c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.5_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["jshell"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV GPG_KEYS=5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=10
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=10.1.31
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=0e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg ; ddist() { local f="$1"; shift; local distFile="$1"; shift; local mvnFile="${1:-}"; local success=; local distUrl=; for distUrl in "https://dlcdn.apache.org/$distFile" "https://archive.apache.org/dist/$distFile" ${mvnFile:+"https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/$mvnFile"} ; do if curl -fL -o "$f" "$distUrl" && [ -s "$f" ]; then success=1; break; fi; done; [ -n "$success" ]; }; ddist 'tomcat.tar.gz' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz"; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum --strict --check -; ddist 'tomcat.tar.gz.asc' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz.asc"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; gpgconf --kill all; rm -rf "$GNUPGHOME"; mv webapps webapps.dist; mkdir webapps; nativeBuildDir="$(mktemp -d)"; tar -xf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; aprConfig="$(command -v apr-1-config)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$aprConfig" --with-java-home="$JAVA_HOME" ; nproc="$(nproc)"; make -j "$nproc"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; find "$TOMCAT_NATIVE_LIBDIR" -type f -executable -exec ldd '{}' ';' | awk '/=>/ { print $(NF-1) }' | xargs -rt readlink -e | sort -u | xargs -rt dpkg-query --search | cut -d: -f1 | sort -u | tee "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt" | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 1777 logs temp work; catalina.sh version # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; nativeLines="$(catalina.sh configtest 2>&1)"; nativeLines="$(echo "$nativeLines" | grep 'Apache Tomcat Native')"; nativeLines="$(echo "$nativeLines" | sort -u)"; if ! echo "$nativeLines" | grep -E 'INFO: Loaded( APR based)? Apache Tomcat Native library' >&2; then echo >&2 "$nativeLines"; exit 1; fi # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
2024-10-09 17:25:06 UTC
213 MB
/usr/local/tomcat
GPG_KEYS5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
JAVA_HOME/opt/java/openjdk
JAVA_VERSIONjdk-21.0.5+11
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib
PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TOMCAT_MAJOR10
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA5120e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
TOMCAT_VERSION10.1.31
[#000] sha256:1f630473117188fe348ebdcf0da5e93138275af14007f15baf79967a365e647a - 12.91% (27.5 MB)
[#001] sha256:004549c9d7e4108958645eea52f71a0e8ba6f18d72dd6dca3a47239ce74704dd - 10.8% (23 MB)
[#002] sha256:9cb5b943bfd3f00e0cb6dbdcbdec2bc5369d7ddd4e94e099ba5b5590f779cca6 - 69.64% (149 MB)
[#003] sha256:e8c07053111480c17e0494e9e117e0508742a6dc7959cbc4a7a8fe3990f0fa55 - 0.0% (160 Bytes)
[#004] sha256:a91708d9e6c98b53f3fe0fa6ac08b5cc3c555f29f937966cb943c6c426567fbe - 0.0% (2.23 KB)
[#005] sha256:3bbd659f01d0dd387dfcfca114139646f2d373d3c9267ae71888f2b32b041c61 - 0.0% (138 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:9571670509062cb3701820ba73c999f59a4f4b6f660db487105e6914a812a3c7 - 6.64% (14.2 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ADD file:b14427a5ec8028ba993a0ff27f9e398456229f9113c9c39f3cc7a0f96c15943b in /
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata 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-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.5+11
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_linux_hotspot_21.0.5_11.tar.gz'; ;; arm64) ESUM='6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.5_11.tar.gz'; ;; ppc64el) ESUM='3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.5_11.tar.gz'; ;; riscv64) ESUM='2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.5_11.tar.gz'; ;; s390x) ESUM='51a7ca42cc2e8cb5f3e7a326c28912ee84ff0791a1ca66650a8c53af07510a7c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.5_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["jshell"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV GPG_KEYS=5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=10
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=10.1.31
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=0e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg ; ddist() { local f="$1"; shift; local distFile="$1"; shift; local mvnFile="${1:-}"; local success=; local distUrl=; for distUrl in "https://dlcdn.apache.org/$distFile" "https://archive.apache.org/dist/$distFile" ${mvnFile:+"https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/$mvnFile"} ; do if curl -fL -o "$f" "$distUrl" && [ -s "$f" ]; then success=1; break; fi; done; [ -n "$success" ]; }; ddist 'tomcat.tar.gz' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz"; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum --strict --check -; ddist 'tomcat.tar.gz.asc' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz.asc"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; gpgconf --kill all; rm -rf "$GNUPGHOME"; mv webapps webapps.dist; mkdir webapps; nativeBuildDir="$(mktemp -d)"; tar -xf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; aprConfig="$(command -v apr-1-config)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$aprConfig" --with-java-home="$JAVA_HOME" ; nproc="$(nproc)"; make -j "$nproc"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; find "$TOMCAT_NATIVE_LIBDIR" -type f -executable -exec ldd '{}' ';' | awk '/=>/ { print $(NF-1) }' | xargs -rt readlink -e | sort -u | xargs -rt dpkg-query --search | cut -d: -f1 | sort -u | tee "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt" | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 1777 logs temp work; catalina.sh version # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; nativeLines="$(catalina.sh configtest 2>&1)"; nativeLines="$(echo "$nativeLines" | grep 'Apache Tomcat Native')"; nativeLines="$(echo "$nativeLines" | sort -u)"; if ! echo "$nativeLines" | grep -E 'INFO: Loaded( APR based)? Apache Tomcat Native library' >&2; then echo >&2 "$nativeLines"; exit 1; fi # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
2024-10-09 17:25:06 UTC
221 MB
/usr/local/tomcat
GPG_KEYS5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
JAVA_HOME/opt/java/openjdk
JAVA_VERSIONjdk-21.0.5+11
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib
PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TOMCAT_MAJOR10
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA5120e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
TOMCAT_VERSION10.1.31
[#000] sha256:5f3161c1c329da2d67fc0650c9fd31e151f03956f8a0cb901012dc9bf6029cbc - 14.86% (32.8 MB)
[#001] sha256:4d5015b6ce586c1324ac541be983626d7a9d0798228304371fa667facca7145f - 10.43% (23 MB)
[#002] sha256:471abede4ca770147d466e7c9da709afe2053c02bd3a94339ea7754608c0bac3 - 68.18% (150 MB)
[#003] sha256:dbd82d102749d16c30d1c6757094064f813d40d1a2032ae0a6275a3db2a3958a - 0.0% (159 Bytes)
[#004] sha256:7b7c1a9dd8dd931c80c1c2cf77071b594058655b636ccf1f92ec897c2e2e6582 - 0.0% (2.23 KB)
[#005] sha256:e98455efbcd2dc0494ce5aec66a9cc865cd5421ee05d65cae329aee83aa1bdfe - 0.0% (138 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:978cfd6b00fdaa49ca58203579664241187e3a7d541d566ce36726e3305f6529 - 6.53% (14.4 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ADD file:536f7d2a284525103973196c539c45f59251ee1d6bbd34f1d92ff9d6187da127 in /
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata 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-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.5+11
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_linux_hotspot_21.0.5_11.tar.gz'; ;; arm64) ESUM='6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.5_11.tar.gz'; ;; ppc64el) ESUM='3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.5_11.tar.gz'; ;; riscv64) ESUM='2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.5_11.tar.gz'; ;; s390x) ESUM='51a7ca42cc2e8cb5f3e7a326c28912ee84ff0791a1ca66650a8c53af07510a7c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.5_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["jshell"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV GPG_KEYS=5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=10
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=10.1.31
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=0e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg ; ddist() { local f="$1"; shift; local distFile="$1"; shift; local mvnFile="${1:-}"; local success=; local distUrl=; for distUrl in "https://dlcdn.apache.org/$distFile" "https://archive.apache.org/dist/$distFile" ${mvnFile:+"https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/$mvnFile"} ; do if curl -fL -o "$f" "$distUrl" && [ -s "$f" ]; then success=1; break; fi; done; [ -n "$success" ]; }; ddist 'tomcat.tar.gz' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz"; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum --strict --check -; ddist 'tomcat.tar.gz.asc' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz.asc"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; gpgconf --kill all; rm -rf "$GNUPGHOME"; mv webapps webapps.dist; mkdir webapps; nativeBuildDir="$(mktemp -d)"; tar -xf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; aprConfig="$(command -v apr-1-config)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$aprConfig" --with-java-home="$JAVA_HOME" ; nproc="$(nproc)"; make -j "$nproc"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; find "$TOMCAT_NATIVE_LIBDIR" -type f -executable -exec ldd '{}' ';' | awk '/=>/ { print $(NF-1) }' | xargs -rt readlink -e | sort -u | xargs -rt dpkg-query --search | cut -d: -f1 | sort -u | tee "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt" | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 1777 logs temp work; catalina.sh version # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; nativeLines="$(catalina.sh configtest 2>&1)"; nativeLines="$(echo "$nativeLines" | grep 'Apache Tomcat Native')"; nativeLines="$(echo "$nativeLines" | sort -u)"; if ! echo "$nativeLines" | grep -E 'INFO: Loaded( APR based)? Apache Tomcat Native library' >&2; then echo >&2 "$nativeLines"; exit 1; fi # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
2024-10-09 17:25:06 UTC
209 MB
/usr/local/tomcat
GPG_KEYS5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
JAVA_HOME/opt/java/openjdk
JAVA_VERSIONjdk-21.0.5+11
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib
PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TOMCAT_MAJOR10
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA5120e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
TOMCAT_VERSION10.1.31
[#000] sha256:53300d777b1a34c849b57f3a3ccdc52f3ad795ea045079e7bcca5f63efab0327 - 14.1% (29.5 MB)
[#001] sha256:7ad1581c9aa53a3728149e757b765396bf63e7437bad2bf2ac1fc3d2bfb77849 - 9.17% (19.2 MB)
[#002] sha256:032ac85eab79d6d8fba40150d0413bc62a5416090db6f7baafd8a9072271e5c9 - 69.85% (146 MB)
[#003] sha256:30c254f4c1a7db121956f3b26fe29edec5f2288d99edc83613c1df86552565f6 - 0.0% (159 Bytes)
[#004] sha256:2c84191407c5e3d5c3a045347eb7e8da852f0790e1db8cd2f5d9b24c01c55e2d - 0.0% (2.23 KB)
[#005] sha256:cd248d0513b10ad26e6cb875dfca6d8a6082cfe11e2b40b24236e9fa20a61824 - 0.0% (137 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:9c88f75ab262260fece10076bc48a4eba54ab6665af6e69f5594d809e782b36f - 6.87% (14.4 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ADD file:008d2e9e73153005eafa485b2ecca3ca9fd6996da5b5c99a52a7376427350f8d in /
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata 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-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.5+11
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_linux_hotspot_21.0.5_11.tar.gz'; ;; arm64) ESUM='6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.5_11.tar.gz'; ;; ppc64el) ESUM='3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.5_11.tar.gz'; ;; riscv64) ESUM='2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.5_11.tar.gz'; ;; s390x) ESUM='51a7ca42cc2e8cb5f3e7a326c28912ee84ff0791a1ca66650a8c53af07510a7c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.5_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["jshell"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV GPG_KEYS=5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=10
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=10.1.31
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=0e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg ; ddist() { local f="$1"; shift; local distFile="$1"; shift; local mvnFile="${1:-}"; local success=; local distUrl=; for distUrl in "https://dlcdn.apache.org/$distFile" "https://archive.apache.org/dist/$distFile" ${mvnFile:+"https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/$mvnFile"} ; do if curl -fL -o "$f" "$distUrl" && [ -s "$f" ]; then success=1; break; fi; done; [ -n "$success" ]; }; ddist 'tomcat.tar.gz' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz"; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum --strict --check -; ddist 'tomcat.tar.gz.asc' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz.asc"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; gpgconf --kill all; rm -rf "$GNUPGHOME"; mv webapps webapps.dist; mkdir webapps; nativeBuildDir="$(mktemp -d)"; tar -xf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; aprConfig="$(command -v apr-1-config)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$aprConfig" --with-java-home="$JAVA_HOME" ; nproc="$(nproc)"; make -j "$nproc"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; find "$TOMCAT_NATIVE_LIBDIR" -type f -executable -exec ldd '{}' ';' | awk '/=>/ { print $(NF-1) }' | xargs -rt readlink -e | sort -u | xargs -rt dpkg-query --search | cut -d: -f1 | sort -u | tee "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt" | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 1777 logs temp work; catalina.sh version # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; nativeLines="$(catalina.sh configtest 2>&1)"; nativeLines="$(echo "$nativeLines" | grep 'Apache Tomcat Native')"; nativeLines="$(echo "$nativeLines" | sort -u)"; if ! echo "$nativeLines" | grep -E 'INFO: Loaded( APR based)? Apache Tomcat Native library' >&2; then echo >&2 "$nativeLines"; exit 1; fi # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
2024-10-09 17:25:06 UTC
204 MB
/usr/local/tomcat
GPG_KEYS5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
JAVA_HOME/opt/java/openjdk
JAVA_VERSIONjdk-21.0.5+11
LANGen_US.UTF-8
LANGUAGEen_US:en
LC_ALLen_US.UTF-8
LD_LIBRARY_PATH/usr/local/tomcat/native-jni-lib
PATH/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
TOMCAT_MAJOR10
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA5120e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
TOMCAT_VERSION10.1.31
[#000] sha256:3d2abe11fb3bab133e95a31c3eeb04ba27eaed096cd5d4d3baeb8f12c3473633 - 14.02% (28.6 MB)
[#001] sha256:f27f15a27e222297c6cfc7ff35c93f9554173ba0fd636eed63d1b95190254dbf - 10.35% (21.1 MB)
[#002] sha256:fff312af20d609ce1b35746f4a037b0ea1bbeb16e9be6343a23c842a9250548b - 68.6% (140 MB)
[#003] sha256:b9fe85dfeafac7f843876020e63abaab9b1e2afffc2856394eba53099954ad80 - 0.0% (160 Bytes)
[#004] sha256:7bfc4def8cf8a7466791f3efac4701029840f5c633bea077ab5de61b1fdf59d2 - 0.0% (2.23 KB)
[#005] sha256:370eb0e8e91ee9a7a81776d1a56097f5c4fe8e96a17b65e6591da21eb3bf2d26 - 0.0% (137 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:1dd64dfd8b68d4c379e3101165e9fa85642d8697c6bb7daaf46fafc1ba0c540f - 7.02% (14.3 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) ADD file:77ba16e2cf3c210906ec7587ab14314afc15cb73af4337fde69ac35187fdb263 in /
2024-10-09 17:25:06 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends curl wget gnupg fontconfig ca-certificates p11-kit binutils tzdata 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-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk-21.0.5+11
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='3c654d98404c073b8a7e66bffb27f4ae3e7ede47d13284c132d40a83144bfd8c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_x64_linux_hotspot_21.0.5_11.tar.gz'; ;; arm64) ESUM='6482639ed9fd22aa2e704cc366848b1b3e1586d2bf1213869c43e80bca58fe5c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_aarch64_linux_hotspot_21.0.5_11.tar.gz'; ;; ppc64el) ESUM='3c6f4c358facfb6c19d90faf02bfe0fc7512d6b0e80ac18146bbd7e0d01deeef'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_ppc64le_linux_hotspot_21.0.5_11.tar.gz'; ;; riscv64) ESUM='2f1b3e401e36de803398dfb9818861f9f14ca8ae7db650ea0946ab048fefe3b9'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_riscv64_linux_hotspot_21.0.5_11.tar.gz'; ;; s390x) ESUM='51a7ca42cc2e8cb5f3e7a326c28912ee84ff0791a1ca66650a8c53af07510a7c'; BINARY_URL='https://github.com/adoptium/temurin21-binaries/releases/download/jdk-21.0.5%2B11/OpenJDK21U-jdk_s390x_linux_hotspot_21.0.5_11.tar.gz'; ;; *) echo "Unsupported arch: ${ARCH}"; exit 1; ;; esac; wget --progress=dot:giga -O /tmp/openjdk.tar.gz ${BINARY_URL}; wget --progress=dot:giga -O /tmp/openjdk.tar.gz.sig ${BINARY_URL}.sig; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys 3B04D753C9050D9A5D343F39843C48A565F8F04B; gpg --batch --verify /tmp/openjdk.tar.gz.sig /tmp/openjdk.tar.gz; rm -r "${GNUPGHOME}" /tmp/openjdk.tar.gz.sig; echo "${ESUM} */tmp/openjdk.tar.gz" | sha256sum -c -; mkdir -p "$JAVA_HOME"; tar --extract --file /tmp/openjdk.tar.gz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm -f /tmp/openjdk.tar.gz ${JAVA_HOME}/lib/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; fileEncoding="$(echo 'System.out.println(System.getProperty("file.encoding"))' | jshell -s -)"; [ "$fileEncoding" = 'UTF-8' ]; rm -rf ~/.java; echo "javac --version"; javac --version; echo "java --version"; java --version; echo "Complete." # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["jshell"]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV PATH=/usr/local/tomcat/bin:/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV GPG_KEYS=5C3C5F3E314C866292F359A8F3AD5C94A67F707E A9C5DF4D22E99998D9875A5110C01C5A2F6059E7
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=10
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=10.1.31
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=0e3d423a843e2d9ba4f28a9f0a2f1073d5a1389557dfda041759f8df968bace63cd6948bd76df2727b5133ddb7c33e05dab43cea1d519ca0b6d519461152cce9
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; savedAptMark="$(apt-mark showmanual)"; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl gnupg ; ddist() { local f="$1"; shift; local distFile="$1"; shift; local mvnFile="${1:-}"; local success=; local distUrl=; for distUrl in "https://dlcdn.apache.org/$distFile" "https://archive.apache.org/dist/$distFile" ${mvnFile:+"https://repo1.maven.org/maven2/org/apache/tomcat/tomcat/$mvnFile"} ; do if curl -fL -o "$f" "$distUrl" && [ -s "$f" ]; then success=1; break; fi; done; [ -n "$success" ]; }; ddist 'tomcat.tar.gz' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz"; echo "$TOMCAT_SHA512 *tomcat.tar.gz" | sha512sum --strict --check -; ddist 'tomcat.tar.gz.asc' "tomcat/tomcat-$TOMCAT_MAJOR/v$TOMCAT_VERSION/bin/apache-tomcat-$TOMCAT_VERSION.tar.gz.asc" "$TOMCAT_VERSION/tomcat-$TOMCAT_VERSION.tar.gz.asc"; export GNUPGHOME="$(mktemp -d)"; for key in $GPG_KEYS; do gpg --batch --keyserver keyserver.ubuntu.com --recv-keys "$key"; done; gpg --batch --verify tomcat.tar.gz.asc tomcat.tar.gz; tar -xf tomcat.tar.gz --strip-components=1; rm bin/*.bat; rm tomcat.tar.gz*; gpgconf --kill all; rm -rf "$GNUPGHOME"; mv webapps webapps.dist; mkdir webapps; nativeBuildDir="$(mktemp -d)"; tar -xf bin/tomcat-native.tar.gz -C "$nativeBuildDir" --strip-components=1; apt-get install -y --no-install-recommends dpkg-dev gcc libapr1-dev libssl-dev make ; ( export CATALINA_HOME="$PWD"; cd "$nativeBuildDir/native"; gnuArch="$(dpkg-architecture --query DEB_BUILD_GNU_TYPE)"; aprConfig="$(command -v apr-1-config)"; ./configure --build="$gnuArch" --libdir="$TOMCAT_NATIVE_LIBDIR" --prefix="$CATALINA_HOME" --with-apr="$aprConfig" --with-java-home="$JAVA_HOME" ; nproc="$(nproc)"; make -j "$nproc"; make install; ); rm -rf "$nativeBuildDir"; rm bin/tomcat-native.tar.gz; apt-mark auto '.*' > /dev/null; [ -z "$savedAptMark" ] || apt-mark manual $savedAptMark > /dev/null; find "$TOMCAT_NATIVE_LIBDIR" -type f -executable -exec ldd '{}' ';' | awk '/=>/ { print $(NF-1) }' | xargs -rt readlink -e | sort -u | xargs -rt dpkg-query --search | cut -d: -f1 | sort -u | tee "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt" | xargs -r apt-mark manual ; apt-get purge -y --auto-remove -o APT::AutoRemove::RecommendsImportant=false; rm -rf /var/lib/apt/lists/*; find ./bin/ -name '*.sh' -exec sed -ri 's|^#!/bin/sh$|#!/usr/bin/env bash|' '{}' +; chmod -R +rX .; chmod 1777 logs temp work; catalina.sh version # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; nativeLines="$(catalina.sh configtest 2>&1)"; nativeLines="$(echo "$nativeLines" | grep 'Apache Tomcat Native')"; nativeLines="$(echo "$nativeLines" | sort -u)"; if ! echo "$nativeLines" | grep -E 'INFO: Loaded( APR based)? Apache Tomcat Native library' >&2; then echo >&2 "$nativeLines"; exit 1; fi # buildkit
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2024-10-09 17:25:06 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
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.