mapstore2 (20250320)
Published 2025-03-20 20:18:22 +13:00 by lightweight
Installation
docker pull forge.magnificent.nz/maintrust/mapstore2:20250320
sha256:088e26e571134eec3361c6b9b9eb4fe5ee2e6f69835299eb532e839b4f1830f7
Image Layers
ADD file:d0f758e50c654c225f6c7f03e8a579efc9106437051573bdbae5e63b1c4b2c1f in / |
CMD ["bash"] |
/bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends ca-certificates curl netbase wget ; rm -rf /var/lib/apt/lists/* |
/bin/sh -c set -ex; if ! command -v gpg > /dev/null; then apt-get update; apt-get install -y --no-install-recommends gnupg dirmngr ; rm -rf /var/lib/apt/lists/*; fi |
/bin/sh -c set -eux; apt-get update; apt-get install -y --no-install-recommends bzip2 unzip xz-utils fontconfig libfreetype6 ca-certificates p11-kit ; rm -rf /var/lib/apt/lists/* |
ENV JAVA_HOME=/usr/local/openjdk-11 |
/bin/sh -c { echo '#/bin/sh'; echo 'echo "$JAVA_HOME"'; } > /usr/local/bin/docker-java-home && chmod +x /usr/local/bin/docker-java-home && [ "$JAVA_HOME" = "$(docker-java-home)" ] # backwards compatibility |
ENV PATH=/usr/local/openjdk-11/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
ENV LANG=C.UTF-8 |
ENV JAVA_VERSION=11.0.16 |
/bin/sh -c set -eux; arch="$(dpkg --print-architecture)"; case "$arch" in 'amd64') downloadUrl='https://github.com/AdoptOpenJDK/openjdk11-upstream-binaries/releases/download/jdk-11.0.16%2B8/OpenJDK11U-jre_x64_linux_11.0.16_8.tar.gz'; ;; 'arm64') downloadUrl='https://github.com/AdoptOpenJDK/openjdk11-upstream-binaries/releases/download/jdk-11.0.16%2B8/OpenJDK11U-jre_aarch64_linux_11.0.16_8.tar.gz'; ;; *) echo >&2 "error: unsupported architecture: '$arch'"; exit 1 ;; esac; wget --progress=dot:giga -O openjdk.tgz "$downloadUrl"; wget --progress=dot:giga -O openjdk.tgz.asc "$downloadUrl.sign"; export GNUPGHOME="$(mktemp -d)"; gpg --batch --keyserver keyserver.ubuntu.com --recv-keys EAC843EBD3EFDB98CC772FADA5CD6035332FA671; gpg --batch --keyserver keyserver.ubuntu.com --keyserver-options no-self-sigs-only --recv-keys CA5F11C6CE22644D42C6AC4492EF8D39DC13168F; gpg --batch --list-sigs --keyid-format 0xLONG CA5F11C6CE22644D42C6AC4492EF8D39DC13168F | tee /dev/stderr | grep '0xA5CD6035332FA671' | grep 'Andrew Haley'; gpg --batch --verify openjdk.tgz.asc openjdk.tgz; gpgconf --kill all; rm -rf "$GNUPGHOME"; mkdir -p "$JAVA_HOME"; tar --extract --file openjdk.tgz --directory "$JAVA_HOME" --strip-components 1 --no-same-owner ; rm openjdk.tgz*; { echo '#!/usr/bin/env bash'; echo 'set -Eeuo pipefail'; echo 'trust extract --overwrite --format=java-cacerts --filter=ca-anchors --purpose=server-auth "$JAVA_HOME/lib/security/cacerts"'; } > /etc/ca-certificates/update.d/docker-openjdk; chmod +x /etc/ca-certificates/update.d/docker-openjdk; /etc/ca-certificates/update.d/docker-openjdk; find "$JAVA_HOME/lib" -name '*.so' -exec dirname '{}' ';' | sort -u > /etc/ld.so.conf.d/docker-openjdk.conf; ldconfig; java -Xshare:dump; java --version |
ENV CATALINA_HOME=/usr/local/tomcat |
ENV PATH=/usr/local/tomcat/bin:/usr/local/openjdk-11/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
/bin/sh -c mkdir -p "$CATALINA_HOME" |
WORKDIR /usr/local/tomcat |
ENV TOMCAT_NATIVE_LIBDIR=/usr/local/tomcat/native-jni-lib |
ENV LD_LIBRARY_PATH=/usr/local/tomcat/native-jni-lib |
ENV GPG_KEYS=48F8E69F6390C9F25CFEDCD268248959359E722B A9C5DF4D22E99998D9875A5110C01C5A2F6059E7 DCFD35E0BF8CA7344752DE8B6FB21E8933C60243 |
ENV TOMCAT_MAJOR=9 |
ENV TOMCAT_VERSION=9.0.65 |
ENV TOMCAT_SHA512=2ae846848b8436856be11cfa18d9c62caa06ca7d3134012b2e10cbf6078753c4af20cc5d37f7dc75f1779f5c59d7c033850b8626534c3ce7e389641a67963cf6 |
COPY dir:65dd5ac50766599795e77577cb99e06ab5d40467f701cdbf7b34e61fc84ea5d5 in /usr/local/tomcat |
/bin/sh -c set -eux; apt-get update; xargs -rt apt-get install -y --no-install-recommends < "$TOMCAT_NATIVE_LIBDIR/.dependencies.txt"; rm -rf /var/lib/apt/lists/* |
/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 |
EXPOSE 8080 |
CMD ["catalina.sh" "run"] |
ARG MS2_VERS=2022.01.02 |
ENV GEOSTORE_VERS=v1.8.1 |
RUN |1 MS2_VERS=2022.01.02 /bin/sh -c apt-get update && apt-get install --no-install-recommends -y postgresql-client jq xmlstarlet gettext curl unzip zip git ca-certificates python3 less vim && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
ARG MS2_USER=mapstore |
ARG MS2_GROUP=mapstore |
ARG MS2_UID=5005 |
ARG MS2_GID=50005 |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c groupadd -r ${MS2_GROUP} -g ${MS2_GID} && useradd -m -d /home/${MS2_USER}/ -u ${MS2_UID} --gid ${MS2_GID} -s /bin/bash -G ${MS2_GROUP} ${MS2_USER} # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c chown -R "${MS2_USER}:${MS2_GROUP}" ${CATALINA_HOME} # buildkit |
ENV MS2_DIR=/srv/mapstore |
ENV MS2_SCRIPT_DIR=/scripts |
ENV MS2_DATA_DIR=/srv/mapstore_data |
ENV MS2_PLUGIN_PATCH_DIR=/plugin-patch |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c mkdir -p ${MS2_SCRIPT_DIR} ${MS2_DATA_DIR}/configs ${MS2_DATA_DIR}/extensions ${MS2_PLUGIN_PATCH_DIR} && chown -R "${MS2_USER}:${MS2_GROUP}" ${MS2_DATA_DIR} ${MS2_PLUGIN_PATCH_DIR} # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c curl -o ${MS2_SCRIPT_DIR}/tc_common.sh https://raw.githubusercontent.com/envisionz/docker-common/3442a7b5860647524d52a662d704d8cc5d814d99/tomcat/tomcat-common.sh && chown "${MS2_USER}:${MS2_GROUP}" ${MS2_SCRIPT_DIR}/tc_common.sh && chmod +x ${MS2_SCRIPT_DIR}/tc_common.sh # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c curl -o ${MS2_SCRIPT_DIR}/tc_healthcheck.sh https://raw.githubusercontent.com/envisionz/docker-common/18906e698a9de3c8bc4ae81557b3df6611132ea4/tomcat/healthcheck.sh && chown "${MS2_USER}:${MS2_GROUP}" ${MS2_SCRIPT_DIR}/tc_healthcheck.sh && chmod +x ${MS2_SCRIPT_DIR}/tc_healthcheck.sh # buildkit |
ENV HEALTH_URL_FILE=/home/mapstore/health_url.txt |
ENV MS2_FRONTENT_SRC_MAP_ZIP=/frontend-source-maps.zip |
COPY --chown=mapstore:mapstore /mapstore/ /srv/mapstore/ # buildkit |
COPY --chown=mapstore:mapstore /frontend-source-maps.zip /frontend-source-maps.zip # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c cp ${MS2_DIR}/product/assets/img/favicon.ico ${MS2_DIR}/dist/web/client/product/assets/img/favicon.ico # buildkit |
COPY ./config/ /internal-config/ # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c cp ${MS2_DIR}/configs/localConfig.json /internal-config/localConfig.json && chown "${MS2_USER}:${MS2_GROUP}" /internal-config/localConfig.json # buildkit |
ENV TERM=xterm |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c mkdir -p /h2db && chown "${MS2_USER}:${MS2_GROUP}" /h2db /internal-config/user_init_list.xml # buildkit |
COPY ./entrypoint.sh ./pluginPatch/pluginPatch.py /scripts/ # buildkit |
RUN |5 MS2_VERS=2022.01.02 MS2_USER=mapstore MS2_GROUP=mapstore MS2_UID=5005 MS2_GID=50005 /bin/sh -c chmod +x /scripts/entrypoint.sh # buildkit |
USER mapstore |
ENTRYPOINT ["/scripts/entrypoint.sh"] |
EXPOSE map[8080/tcp:{}] |