maven-node-docker (latest)
Published 2025-10-13 00:35:41 +00:00 by michael.brandt-hartmann
Installation
docker pull git.moreteam.de/michael.brandt-hartmann/maven-node-docker:latestsha256:869123d0448381e7e6ba8f869c7f179e0f38925ad078ea1f40464c00f9ee9629About this package
Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information.
Image layers
| ARG RELEASE |
| ARG LAUNCHPAD_BUILD_ARCH |
| LABEL org.opencontainers.image.ref.name=ubuntu |
| LABEL org.opencontainers.image.version=24.04 |
| ADD file:598ca0108009b5c2e9e6f4fc4bd19a6bcd604fccb5b9376fac14a75522a5cfa3 in / |
| CMD ["/bin/bash"] |
| ENV JAVA_HOME=/opt/java/openjdk |
| ENV PATH=/opt/java/openjdk/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin |
| ENV LANG=en_US.UTF-8 LANGUAGE=en_US:en LC_ALL=en_US.UTF-8 |
| RUN /bin/sh -c set -eux; apt-get update; DEBIAN_FRONTEND=noninteractive apt-get install -y --no-install-recommends 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 |
| ENV JAVA_VERSION=jdk-24.0.1+9 |
| RUN /bin/sh -c set -eux; ARCH="$(dpkg --print-architecture)"; case "${ARCH}" in amd64) ESUM='78832cb5ea4074f2215cde0d01d6192d09c87636fc24b36647aea61fb23b8272'; BINARY_URL='https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24.0.1%2B9/OpenJDK24U-jdk_x64_linux_hotspot_24.0.1_9.tar.gz'; ;; arm64) ESUM='a598260e340028d9b2383c23df16aa286769a661bd3bf28a52e8c1a5774b1110'; BINARY_URL='https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24.0.1%2B9/OpenJDK24U-jdk_aarch64_linux_hotspot_24.0.1_9.tar.gz'; ;; ppc64el) ESUM='770e7e506d5ea3baf6c4c9004a82648e29508a1c731d8425acded34906e91b09'; BINARY_URL='https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24.0.1%2B9/OpenJDK24U-jdk_ppc64le_linux_hotspot_24.0.1_9.tar.gz'; ;; riscv64) ESUM='4e953ec63e141b667e02f7179304c6553cbd13ba94b60dcadd8e45c7f309c89d'; BINARY_URL='https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24.0.1%2B9/OpenJDK24U-jdk_riscv64_linux_hotspot_24.0.1_9.tar.gz'; ;; s390x) ESUM='6ff3126ae0a7cff3a25b7590adc441550666750515fd7d6e2d2706b5fc9a1f6f'; BINARY_URL='https://github.com/adoptium/temurin24-binaries/releases/download/jdk-24.0.1%2B9/OpenJDK24U-jdk_s390x_linux_hotspot_24.0.1_9.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}/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 |
| 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 |
| COPY --chmod=755 entrypoint.sh /__cacert_entrypoint.sh # buildkit |
| ENTRYPOINT ["/__cacert_entrypoint.sh"] |
| CMD ["jshell"] |
| RUN /bin/sh -c apt-get update && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends && rm -rf /var/lib/apt/lists/* # buildkit |
| LABEL org.opencontainers.image.title=Apache Maven |
| LABEL org.opencontainers.image.source=https://github.com/carlossg/docker-maven |
| LABEL org.opencontainers.image.url=https://github.com/carlossg/docker-maven |
| LABEL org.opencontainers.image.description=Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. |
| ENV MAVEN_HOME=/usr/share/maven |
| COPY /usr/share/maven /usr/share/maven # buildkit |
| COPY /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh # buildkit |
| COPY /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml # buildkit |
| RUN /bin/sh -c ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn # buildkit |
| ARG MAVEN_VERSION=3.9.9 |
| ARG USER_HOME_DIR=/root |
| ENV MAVEN_CONFIG=/root/.m2 |
| ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] |
| CMD ["mvn"] |
| LABEL maintainer=info@moreteam.de |
| LABEL description=Maven + Node.js + Docker CLI build image (Temurin JDK 24, Node 20) |
| RUN /bin/sh -c apt-get update && apt-get install -y curl gnupg ca-certificates lsb-release && curl -fsSL https://deb.nodesource.com/setup_20.x | bash - && apt-get install -y nodejs && npm install -g npm@latest && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c apt-get update && curl -fsSL https://download.docker.com/linux/debian/gpg | gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg && echo "deb [arch=$(dpkg --print-architecture) signed-by=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/debian bookworm stable" > /etc/apt/sources.list.d/docker.list && apt-get update && apt-get install -y docker-ce-cli docker-compose-plugin && apt-get clean && rm -rf /var/lib/apt/lists/* # buildkit |
| RUN /bin/sh -c java -version && mvn -version && node -v && npm -v && docker --version && docker compose version # buildkit |
| WORKDIR /app |
| CMD ["mvn" "--version"] |
Labels
| Key | Value |
|---|---|
| description | Maven + Node.js + Docker CLI build image (Temurin JDK 24, Node 20) |
| maintainer | info@moreteam.de |
| org.opencontainers.image.description | Apache Maven is a software project management and comprehension tool. Based on the concept of a project object model (POM), Maven can manage a project's build, reporting and documentation from a central piece of information. |
| org.opencontainers.image.ref.name | ubuntu |
| org.opencontainers.image.source | https://github.com/carlossg/docker-maven |
| org.opencontainers.image.title | Apache Maven |
| org.opencontainers.image.url | https://github.com/carlossg/docker-maven |
| org.opencontainers.image.version | 24.04 |