2026-03-20 21:03:13 UTC
336 MB
/usr/local/tomcat
DATA_DIR/usr/local/tomcat/webapps/geonetwork/WEB-INF/data
GN_DOWNLOAD_MD5c9d2a15f5cecbd31fa6697c3f52f0180
GN_FILEgeonetwork.war
GN_VERSION3.12.12
JAVA_HOME/opt/java/openjdk
JAVA_OPTS-Djava.security.egd=file:/dev/./urandom -Djava.awt.headless=true -server -Xms512m -Xmx2024m -XX:NewSize=512m -XX:MaxNewSize=1024m -XX:+UseConcMarkSweepGC
JAVA_VERSIONjdk8u482-b08
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_MAJOR9
TOMCAT_NATIVE_LIBDIR/usr/local/tomcat/native-jni-lib
TOMCAT_SHA512a0992861f7615f0a79d372e84969a1bb48f603ef1687380d9a3579164dae7a1dea6b440e1bad27447f91a676528b2951634a0707616707f1df73cd27534ea5f9
TOMCAT_VERSION9.0.116
[#000] sha256:18dbadc1f2f937d7ebdfa4481fb1f6f43b26e93f5bdc4cef3cef98d7f0ae77aa - 8.67% (29.2 MB)
[#001] sha256:9e0199c91718f70b5df11ccf029cf016f0a71459892d25a13377f2c9f73a9774 - 4.81% (16.2 MB)
[#002] sha256:fd3f0d6c6d56edc378c7429e0a7bbc02fedc7c3c059f487aa87dcd0b49ce4006 - 15.64% (52.6 MB)
[#003] sha256:00ce82191d4b5182445b328c94ca693406e2122619c1e6ba5762577b83e9d746 - 0.0% (128 Bytes)
[#004] sha256:bff5b6be3329d8b592906c3df8b9946bbb06c577c28f8f92e2158d16cef991c9 - 0.0% (2.25 KB)
[#005] sha256:bdf4d3d575d4a2c5b22e8e75ff54717a16f28b78fecc08408049995b97fbbbea - 0.0% (138 Bytes)
[#006] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#007] sha256:f00c086b5b902e03281bf87eb119b69a268f11b8cd4cef87ab7eb5d249500011 - 4.38% (14.7 MB)
[#008] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#009] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
[#010] sha256:df945443426765350836f631748da92346d6d1995f17698f5fe5a102ed2aeafc - 66.49% (224 MB)
[#011] sha256:0058bca38410e6aff316a2a15de0116608621dd383786396ae60bec5107a8da4 - 0.0% (250 Bytes)
[#012] sha256:4f4fb700ef54461cfa02571ae0db9a0dc1e0cdb5577484a6d75e68dc38e8acc1 - 0.0% (32 Bytes)
/bin/sh -c #(nop) ARG RELEASE
2026-02-23 17:17:53 UTC/bin/sh -c #(nop) ARG LAUNCHPAD_BUILD_ARCH
2026-02-23 17:17:53 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.ref.name=ubuntu
2026-02-23 17:17:53 UTC/bin/sh -c #(nop) LABEL org.opencontainers.image.version=24.04
2026-02-23 17:17:55 UTC/bin/sh -c #(nop) ADD file:3f78aa860931e0853077f09eb31eddbeeef8a9dd70977305b4876aa176770721 in /
2026-02-23 17:17:56 UTC/bin/sh -c #(nop) CMD ["/bin/bash"]
2026-03-17 01:22:11 UTC (buildkit.dockerfile.v0)ENV JAVA_HOME=/opt/java/openjdk
2026-03-17 01:22:11 UTC (buildkit.dockerfile.v0)ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
2026-03-17 01:22:11 UTC (buildkit.dockerfile.v0)ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8
2026-03-17 01:22:11 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 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
2026-03-17 01:22:11 UTC (buildkit.dockerfile.v0)ENV JAVA_VERSION=jdk8u482-b08
2026-03-17 01:22:14 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='e74becad56b4cc01f1556a671e578d3788789f5257f9499f6fbed84e63a55ecf'; BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u482-b08/OpenJDK8U-jdk_x64_linux_hotspot_8u482b08.tar.gz'; ;; arm64) ESUM='ada72fbf191fb287b4c1e54be372b64c40c27c2ffbfa01f880c92af11f4e7c94'; BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u482-b08/OpenJDK8U-jdk_aarch64_linux_hotspot_8u482b08.tar.gz'; ;; armhf) ESUM='1d0d16394e2fe637f9eb8e73e63ea6fe9ceee98337c0527aa058cee777ad638a'; BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u482-b08/OpenJDK8U-jdk_arm_linux_hotspot_8u482b08.tar.gz'; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends libatomic1; rm -rf /var/lib/apt/lists/*; ;; ppc64el) ESUM='e77ba337c3ebb37fbef4961299f13fc4db87996ffd5470bdfb460cfc2ddb6053'; BINARY_URL='https://github.com/adoptium/temurin8-binaries/releases/download/jdk8u482-b08/OpenJDK8U-jdk_ppc64le_linux_hotspot_8u482b08.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 -rf "${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}/src.zip; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; # buildkit
2026-03-17 01:22:14 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c set -eux; echo "Verifying install ..."; echo "javac -version"; javac -version; echo "java -version"; java -version; echo "Complete." # buildkit
2026-03-17 01:22:14 UTC (buildkit.dockerfile.v0)COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit
2026-03-17 01:22:14 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/__cacert_entrypoint.sh"]
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV CATALINA_HOME=/usr/local/tomcat
2026-03-20 20:25:12 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
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c mkdir -p "$CATALINA_HOME" # buildkit
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV TOMCAT_MAJOR=9
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV TOMCAT_VERSION=9.0.116
2026-03-20 20:25:12 UTC (buildkit.dockerfile.v0)ENV TOMCAT_SHA512=a0992861f7615f0a79d372e84969a1bb48f603ef1687380d9a3579164dae7a1dea6b440e1bad27447f91a676528b2951634a0707616707f1df73cd27534ea5f9
2026-03-20 20:25:45 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"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; curl -fL -o upstream-KEYS 'https://www.apache.org/dist/tomcat/tomcat-9/KEYS'; gpg --batch --import upstream-KEYS; printf '' > filtered-KEYS; for key in 'DCFD35E0BF8CA7344752DE8B6FB21E8933C60243' 'A9C5DF4D22E99998D9875A5110C01C5A2F6059E7' '48F8E69F6390C9F25CFEDCD268248959359E722B' ; do gpg --batch --fingerprint "$key"; gpg --batch --export --armor "$key" >> filtered-KEYS; done; gpgconf --kill all; rm -rf "$GNUPGHOME"; GNUPGHOME="$(mktemp -d)"; export GNUPGHOME; gpg --batch --import filtered-KEYS; 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" --with-ssl ; 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
2026-03-20 20:25:45 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
2026-03-20 20:25:45 UTC (buildkit.dockerfile.v0)EXPOSE map[8080/tcp:{}]
2026-03-20 20:25:45 UTC (buildkit.dockerfile.v0)ENTRYPOINT []
2026-03-20 20:25:45 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)ENV GN_FILE=geonetwork.war
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)ENV DATA_DIR=/usr/local/tomcat/webapps/geonetwork/WEB-INF/data
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)ENV JAVA_OPTS=-Djava.security.egd=file:/dev/./urandom -Djava.awt.headless=true -server -Xms512m -Xmx2024m -XX:NewSize=512m -XX:MaxNewSize=1024m -XX:+UseConcMarkSweepGC
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)ENV GN_VERSION=3.12.12
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)ENV GN_DOWNLOAD_MD5=c9d2a15f5cecbd31fa6697c3f52f0180
2026-03-20 21:02:15 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat/webapps
2026-03-20 21:03:12 UTC (buildkit.dockerfile.v0)RUN /bin/sh -c apt-get update && apt-get install -y --no-install-recommends unzip curl && rm -rf /var/lib/apt/lists/* && curl -fSL -o $GN_FILE https://sourceforge.net/projects/geonetwork/files/GeoNetwork_opensource/v${GN_VERSION}/${GN_FILE}/download && echo "${GN_DOWNLOAD_MD5} *${GN_FILE}" | md5sum -c && mkdir -p geonetwork && unzip -e $GN_FILE -d geonetwork && rm $GN_FILE # buildkit
2026-03-20 21:03:13 UTC (buildkit.dockerfile.v0)COPY ./docker-entrypoint.sh /entrypoint.sh # buildkit
2026-03-20 21:03:13 UTC (buildkit.dockerfile.v0)WORKDIR /usr/local/tomcat
2026-03-20 21:03:13 UTC (buildkit.dockerfile.v0)ENTRYPOINT ["/entrypoint.sh"]
2026-03-20 21:03:13 UTC (buildkit.dockerfile.v0)CMD ["catalina.sh" "run"]