diff --git a/.github/workflows/eclipse-temurin-22-jammy.yml b/.github/workflows/amazoncorretto-23-al2023.yml similarity index 64% rename from .github/workflows/eclipse-temurin-22-jammy.yml rename to .github/workflows/amazoncorretto-23-al2023.yml index b4cc940b..9e1736e1 100644 --- a/.github/workflows/eclipse-temurin-22-jammy.yml +++ b/.github/workflows/amazoncorretto-23-al2023.yml @@ -1,12 +1,12 @@ -name: eclipse-temurin-22-jammy +name: amazoncorretto-23-al2023 on: push: branches: - main paths: - - "eclipse-temurin-22-jammy/**" - - .github/workflows/eclipse-temurin-22-jammy.yml + - "amazoncorretto-23-al2023/**" + - .github/workflows/amazoncorretto-23-al2023.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -15,8 +15,8 @@ on: - "!tests/*.windows" pull_request: paths: - - "eclipse-temurin-22-jammy/**" - - .github/workflows/eclipse-temurin-22-jammy.yml + - "amazoncorretto-23-al2023/**" + - .github/workflows/amazoncorretto-23-al2023.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -28,5 +28,5 @@ jobs: build: uses: ./.github/workflows/_template.yml with: - directory: eclipse-temurin-22-jammy + directory: amazoncorretto-23-al2023 secrets: inherit diff --git a/.github/workflows/eclipse-temurin-22-alpine.yml b/.github/workflows/amazoncorretto-23-debian.yml similarity index 63% rename from .github/workflows/eclipse-temurin-22-alpine.yml rename to .github/workflows/amazoncorretto-23-debian.yml index c891b461..cf76c5fa 100644 --- a/.github/workflows/eclipse-temurin-22-alpine.yml +++ b/.github/workflows/amazoncorretto-23-debian.yml @@ -1,12 +1,12 @@ -name: eclipse-temurin-22-alpine +name: amazoncorretto-23-debian on: push: branches: - main paths: - - "eclipse-temurin-22-alpine/**" - - .github/workflows/eclipse-temurin-22-alpine.yml + - "amazoncorretto-23-debian/**" + - .github/workflows/amazoncorretto-23-debian.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -15,8 +15,8 @@ on: - "!tests/*.windows" pull_request: paths: - - "eclipse-temurin-22-alpine/**" - - .github/workflows/eclipse-temurin-22-alpine.yml + - "amazoncorretto-23-debian/**" + - .github/workflows/amazoncorretto-23-debian.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -28,5 +28,5 @@ jobs: build: uses: ./.github/workflows/_template.yml with: - directory: eclipse-temurin-22-alpine + directory: amazoncorretto-23-debian secrets: inherit diff --git a/.github/workflows/eclipse-temurin-22.yml b/.github/workflows/amazoncorretto-23.yml similarity index 67% rename from .github/workflows/eclipse-temurin-22.yml rename to .github/workflows/amazoncorretto-23.yml index d5525c13..6e0232be 100644 --- a/.github/workflows/eclipse-temurin-22.yml +++ b/.github/workflows/amazoncorretto-23.yml @@ -1,12 +1,12 @@ -name: eclipse-temurin-22 +name: amazoncorretto-23 on: push: branches: - main paths: - - "eclipse-temurin-22/**" - - .github/workflows/eclipse-temurin-22.yml + - "amazoncorretto-23/**" + - .github/workflows/amazoncorretto-23.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -15,8 +15,8 @@ on: - "!tests/*.windows" pull_request: paths: - - "eclipse-temurin-22/**" - - .github/workflows/eclipse-temurin-22.yml + - "amazoncorretto-23/**" + - .github/workflows/amazoncorretto-23.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -28,5 +28,5 @@ jobs: build: uses: ./.github/workflows/_template.yml with: - directory: eclipse-temurin-22 + directory: amazoncorretto-23 secrets: inherit diff --git a/.github/workflows/azulzulu-23-alpine.yml b/.github/workflows/azulzulu-23-alpine.yml new file mode 100644 index 00000000..2e945e3e --- /dev/null +++ b/.github/workflows/azulzulu-23-alpine.yml @@ -0,0 +1,32 @@ +name: azulzulu-23-alpine + +on: + push: + branches: + - main + paths: + - "azulzulu-23-alpine/**" + - .github/workflows/azulzulu-23-alpine.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-23-alpine/**" + - .github/workflows/azulzulu-23-alpine.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-23-alpine + secrets: inherit diff --git a/.github/workflows/azulzulu-23-debian.yml b/.github/workflows/azulzulu-23-debian.yml new file mode 100644 index 00000000..ad15f2d1 --- /dev/null +++ b/.github/workflows/azulzulu-23-debian.yml @@ -0,0 +1,32 @@ +name: azulzulu-23-debian + +on: + push: + branches: + - main + paths: + - "azulzulu-23-debian/**" + - .github/workflows/azulzulu-23-debian.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "azulzulu-23-debian/**" + - .github/workflows/azulzulu-23-debian.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: azulzulu-23-debian + secrets: inherit diff --git a/.github/workflows/sapmachine-22.yml b/.github/workflows/azulzulu-23.yml similarity index 70% rename from .github/workflows/sapmachine-22.yml rename to .github/workflows/azulzulu-23.yml index aa19f936..6ae72ba7 100644 --- a/.github/workflows/sapmachine-22.yml +++ b/.github/workflows/azulzulu-23.yml @@ -1,12 +1,12 @@ -name: sapmachine-22 +name: azulzulu-23 on: push: branches: - main paths: - - "sapmachine-22/**" - - .github/workflows/sapmachine-22.yml + - "azulzulu-23/**" + - .github/workflows/azulzulu-23.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -15,8 +15,8 @@ on: - "!tests/*.windows" pull_request: paths: - - "sapmachine-22/**" - - .github/workflows/sapmachine-22.yml + - "azulzulu-23/**" + - .github/workflows/azulzulu-23.yml - .github/workflows/_template.yml - common.sh - tags-for-dir.sh @@ -28,5 +28,5 @@ jobs: build: uses: ./.github/workflows/_template.yml with: - directory: sapmachine-22 + directory: azulzulu-23 secrets: inherit diff --git a/.github/workflows/eclipse-temurin-23-alpine.yml b/.github/workflows/eclipse-temurin-23-alpine.yml new file mode 100644 index 00000000..8a99868c --- /dev/null +++ b/.github/workflows/eclipse-temurin-23-alpine.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-23-alpine + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-23-alpine/**" + - .github/workflows/eclipse-temurin-23-alpine.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-23-alpine/**" + - .github/workflows/eclipse-temurin-23-alpine.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-23-alpine + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-23-noble.yml b/.github/workflows/eclipse-temurin-23-noble.yml new file mode 100644 index 00000000..0a36c302 --- /dev/null +++ b/.github/workflows/eclipse-temurin-23-noble.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-23-noble + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-23-noble/**" + - .github/workflows/eclipse-temurin-23-noble.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-23-noble/**" + - .github/workflows/eclipse-temurin-23-noble.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-23-noble + secrets: inherit diff --git a/.github/workflows/eclipse-temurin-23.yml b/.github/workflows/eclipse-temurin-23.yml new file mode 100644 index 00000000..62b310f4 --- /dev/null +++ b/.github/workflows/eclipse-temurin-23.yml @@ -0,0 +1,32 @@ +name: eclipse-temurin-23 + +on: + push: + branches: + - main + paths: + - "eclipse-temurin-23/**" + - .github/workflows/eclipse-temurin-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "eclipse-temurin-23/**" + - .github/workflows/eclipse-temurin-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: eclipse-temurin-23 + secrets: inherit diff --git a/.github/workflows/graalvm-community-23.yml b/.github/workflows/graalvm-community-23.yml new file mode 100644 index 00000000..97b2d428 --- /dev/null +++ b/.github/workflows/graalvm-community-23.yml @@ -0,0 +1,32 @@ +name: graalvm-community-23 + +on: + push: + branches: + - main + paths: + - "graalvm-community-23/**" + - .github/workflows/graalvm-community-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "graalvm-community-23/**" + - .github/workflows/graalvm-community-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: graalvm-community-23 + secrets: inherit diff --git a/.github/workflows/ibm-semeru-23-jammy.yml b/.github/workflows/ibm-semeru-23-jammy.yml new file mode 100644 index 00000000..3c0b7387 --- /dev/null +++ b/.github/workflows/ibm-semeru-23-jammy.yml @@ -0,0 +1,32 @@ +name: ibm-semeru-23-jammy + +on: + push: + branches: + - main + paths: + - "ibm-semeru-23-jammy/**" + - .github/workflows/ibm-semeru-23-jammy.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "ibm-semeru-23-jammy/**" + - .github/workflows/ibm-semeru-23-jammy.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: ibm-semeru-23-jammy + secrets: inherit diff --git a/.github/workflows/oracle-graalvm-23.yml b/.github/workflows/oracle-graalvm-23.yml new file mode 100644 index 00000000..63f0eade --- /dev/null +++ b/.github/workflows/oracle-graalvm-23.yml @@ -0,0 +1,32 @@ +name: oracle-graalvm-23 + +on: + push: + branches: + - main + paths: + - "oracle-graalvm-23/**" + - .github/workflows/oracle-graalvm-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "oracle-graalvm-23/**" + - .github/workflows/oracle-graalvm-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: oracle-graalvm-23 + secrets: inherit diff --git a/.github/workflows/sapmachine-23.yml b/.github/workflows/sapmachine-23.yml new file mode 100644 index 00000000..8c27c5ef --- /dev/null +++ b/.github/workflows/sapmachine-23.yml @@ -0,0 +1,32 @@ +name: sapmachine-23 + +on: + push: + branches: + - main + paths: + - "sapmachine-23/**" + - .github/workflows/sapmachine-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + pull_request: + paths: + - "sapmachine-23/**" + - .github/workflows/sapmachine-23.yml + - .github/workflows/_template.yml + - common.sh + - tags-for-dir.sh + - "tests/**" + - "!tests/*.ps*" + - "!tests/*.windows" + +jobs: + build: + uses: ./.github/workflows/_template.yml + with: + directory: sapmachine-23 + secrets: inherit diff --git a/amazoncorretto-23-al2023/Dockerfile b/amazoncorretto-23-al2023/Dockerfile new file mode 100644 index 00000000..1c970cc7 --- /dev/null +++ b/amazoncorretto-23-al2023/Dockerfile @@ -0,0 +1,24 @@ +FROM amazoncorretto:23-al2023 + +RUN yum install -y openssh-clients + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-23-debian/Dockerfile b/amazoncorretto-23-debian/Dockerfile new file mode 100644 index 00000000..88fa8237 --- /dev/null +++ b/amazoncorretto-23-debian/Dockerfile @@ -0,0 +1,41 @@ +# Update EXTRA_TAG_SUFFIXES to new release when changing to next stable debian release +# EXTRA_TAG_SUFFIXES=bookworm +FROM debian:bookworm-slim + +# install corretto after verifying that the key is the one we expect. +# and keep openssh client +RUN apt-get update \ + && apt-get install -y curl gnupg openssh-client \ + && export GNUPGHOME="$(mktemp -d)" \ + && curl -fL https://apt.corretto.aws/corretto.key | gpg --batch --import \ + && gpg --batch --export '6DC3636DAE534049C8B94623A122542AB04F24E3' > /usr/share/keyrings/corretto.gpg \ + && unset GNUPGHOME \ + && echo "deb [signed-by=/usr/share/keyrings/corretto.gpg] https://apt.corretto.aws stable main" > /etc/apt/sources.list.d/corretto.list \ + && apt-get update \ + && apt-get remove --purge --autoremove -y curl gnupg \ + && apt-get install -y java-23-amazon-corretto-jdk \ + && rm -rf /var/lib/apt/lists/* + +# set JAVA_HOME manually since nothing else will set it +ENV JAVA_HOME="/usr/lib/jvm/java-23-amazon-corretto" + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/amazoncorretto-23/Dockerfile b/amazoncorretto-23/Dockerfile new file mode 100644 index 00000000..eb45ea1a --- /dev/null +++ b/amazoncorretto-23/Dockerfile @@ -0,0 +1,24 @@ +FROM amazoncorretto:23 + +RUN yum install -y openssh-clients findutils + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-22-alpine/Dockerfile b/azulzulu-23-alpine/Dockerfile similarity index 96% rename from eclipse-temurin-22-alpine/Dockerfile rename to azulzulu-23-alpine/Dockerfile index 93dadf1c..ceb1c6aa 100644 --- a/eclipse-temurin-22-alpine/Dockerfile +++ b/azulzulu-23-alpine/Dockerfile @@ -1,4 +1,4 @@ -FROM eclipse-temurin:22-jdk-alpine +FROM azul/zulu-openjdk-alpine:23 RUN apk add --no-cache bash procps curl tar openssh-client diff --git a/azulzulu-23-debian/Dockerfile b/azulzulu-23-debian/Dockerfile new file mode 100644 index 00000000..c013c180 --- /dev/null +++ b/azulzulu-23-debian/Dockerfile @@ -0,0 +1,26 @@ +FROM azul/zulu-openjdk-debian:23 + +RUN apt-get update \ + && apt-get install -y --no-install-recommends openssh-client \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/azulzulu-23/Dockerfile b/azulzulu-23/Dockerfile new file mode 100644 index 00000000..d42c8a73 --- /dev/null +++ b/azulzulu-23/Dockerfile @@ -0,0 +1,26 @@ +FROM azul/zulu-openjdk:23 + +RUN apt-get update \ + && apt-get install -y ca-certificates curl openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-23-alpine/Dockerfile b/eclipse-temurin-23-alpine/Dockerfile new file mode 100644 index 00000000..f86585ad --- /dev/null +++ b/eclipse-temurin-23-alpine/Dockerfile @@ -0,0 +1,24 @@ +FROM eclipse-temurin:23-jdk-alpine + +RUN apk add --no-cache bash procps curl tar openssh-client + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/eclipse-temurin-22-jammy/Dockerfile b/eclipse-temurin-23-noble/Dockerfile similarity index 97% rename from eclipse-temurin-22-jammy/Dockerfile rename to eclipse-temurin-23-noble/Dockerfile index c70134ae..9f0c4bfd 100644 --- a/eclipse-temurin-22-jammy/Dockerfile +++ b/eclipse-temurin-23-noble/Dockerfile @@ -1,4 +1,4 @@ -FROM eclipse-temurin:22-jdk-jammy +FROM eclipse-temurin:23-jdk-noble RUN apt-get update \ && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ diff --git a/eclipse-temurin-22/Dockerfile b/eclipse-temurin-23/Dockerfile similarity index 97% rename from eclipse-temurin-22/Dockerfile rename to eclipse-temurin-23/Dockerfile index aa148052..575ce94a 100644 --- a/eclipse-temurin-22/Dockerfile +++ b/eclipse-temurin-23/Dockerfile @@ -1,4 +1,4 @@ -FROM eclipse-temurin:22-jdk +FROM eclipse-temurin:23-jdk RUN apt-get update \ && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \ diff --git a/graalvm-community-23/Dockerfile b/graalvm-community-23/Dockerfile new file mode 100644 index 00000000..f8828bbe --- /dev/null +++ b/graalvm-community-23/Dockerfile @@ -0,0 +1,24 @@ +FROM ghcr.io/graalvm/graalvm-community:23 + +RUN microdnf --refresh -y install findutils openssh-clients + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/ibm-semeru-23-jammy/Dockerfile b/ibm-semeru-23-jammy/Dockerfile new file mode 100644 index 00000000..2a3e946c --- /dev/null +++ b/ibm-semeru-23-jammy/Dockerfile @@ -0,0 +1,26 @@ +FROM ibm-semeru-runtimes:open-23-jdk-jammy + +RUN apt-get update \ + && apt-get install -y git openssh-client --no-install-recommends \ + && rm -rf /var/lib/apt/lists/* + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/jdk-new-version.sh b/jdk-new-version.sh new file mode 100755 index 00000000..3ea1207d --- /dev/null +++ b/jdk-new-version.sh @@ -0,0 +1,16 @@ +#!/bin/bash -eu + +# Create a new image of each JDK with the new version number + +# gnu sed +PATH="/opt/homebrew/opt/gnu-sed/libexec/gnubin:$PATH" + +from_version="21" +to_version="23" +find . -type d -iname "*${from_version}*" -maxdepth 1 | while read -r dir; do + dir=${dir#./} + new_dir="${dir/${from_version}/${to_version}}" + echo "${dir} -> ${new_dir}" + cp -a "$dir" "${new_dir}" + sed -i "s/${from_version}/${to_version}/g" "${new_dir}/Dockerfile" +done diff --git a/oracle-graalvm-23/Dockerfile b/oracle-graalvm-23/Dockerfile new file mode 100644 index 00000000..8332f8d3 --- /dev/null +++ b/oracle-graalvm-23/Dockerfile @@ -0,0 +1,24 @@ +FROM container-registry.oracle.com/graalvm/native-image:23 + +RUN microdnf --refresh -y install findutils openssh-clients + +# common for all images +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 --from=maven:3.9.9-eclipse-temurin-17 ${MAVEN_HOME} ${MAVEN_HOME} +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/local/bin/mvn-entrypoint.sh /usr/local/bin/mvn-entrypoint.sh +COPY --from=maven:3.9.9-eclipse-temurin-17 /usr/share/maven/ref/settings-docker.xml /usr/share/maven/ref/settings-docker.xml + +RUN ln -s ${MAVEN_HOME}/bin/mvn /usr/bin/mvn + +ARG MAVEN_VERSION=3.9.9 +ARG USER_HOME_DIR="/root" +ENV MAVEN_CONFIG="$USER_HOME_DIR/.m2" + +ENTRYPOINT ["/usr/local/bin/mvn-entrypoint.sh"] +CMD ["mvn"] diff --git a/sapmachine-22/Dockerfile b/sapmachine-23/Dockerfile similarity index 98% rename from sapmachine-22/Dockerfile rename to sapmachine-23/Dockerfile index 5a1f7db5..9904ed17 100644 --- a/sapmachine-22/Dockerfile +++ b/sapmachine-23/Dockerfile @@ -1,4 +1,4 @@ -FROM sapmachine:22 +FROM sapmachine:23 RUN apt-get update \ && apt-get install -y ca-certificates curl git openssh-client --no-install-recommends \