diff --git a/README.md b/README.md index 805c6bd..b27c118 100644 --- a/README.md +++ b/README.md @@ -13,7 +13,7 @@ Learn more at [Oracle Help Center](https://docs.oracle.com/en/graalvm/jdk/21/doc GraalVM Community Edition container images are published in this GitHub Container Registry. There are different GraalVM Community Edition container images provided depending on the architecture and the Java version. -The container images for the latest GraalVM versions (GraalVM for JDK 17, GraalVM for JDK 20, and GraalVM for JDK 21) have a `-community` suffix. +The container images for the latest GraalVM versions (GraalVM for JDK 17, GraalVM for JDK 21, and GraalVM for JDK 22) have a `-community` suffix. These are: **native-image-community**, **jdk-community**, **truffleruby-community**, **nodejs-community**, and **graalpy-community**. The container images are multi-arch, for AMD64 and AArch64 processor architectures, and Linux version. @@ -56,20 +56,20 @@ The following tags are listed from the most-specific tag (at the top) to the lea The most-specific tag is unique and always points to the same image, while the less-specific tags point to newer image variants over time. ``` -21.0.0-ol9-20230919 -21.0.0-ol9 -21.0.0 -21-ol9 -21 +22.0.2-ol9-20240716 +22.0.2-ol9 +22.0.2 +22-ol9 +22 ``` -To pull GraalVM for a specific JDK version, for example, 21, run from a command line: +To pull GraalVM for a specific JDK version, for example, 22, run from a command line: ``` -$ docker pull ghcr.io/graalvm/graalvm-community:21 +$ docker pull ghcr.io/graalvm/graalvm-community:22 ``` To use GraalVM JDK as base image in Dockerfile, use: ``` -FROM ghcr.io/graalvm/graalvm-community:21 +FROM ghcr.io/graalvm/graalvm-community:22 ``` Read more about GraalVM Community Edition container images [here](https://www.graalvm.org/docs/getting-started/container-images/). @@ -82,10 +82,10 @@ To fix the image and allow no updates, you need to use a full version with a rel ghcr.io/graalvm/$IMAGE_NAME[:][$java_version][-$os_version][-$date] ``` -For example, `ghcr.io/graalvm/jdk-community:21.0.0-ol9-20230919`. +For example, `ghcr.io/graalvm/jdk-community:22.0.2-ol9-20240716`. You can also set an image to a specific Java version that allows an update for a subversion to be pulled. -For instance, using `ghcr.io/graalvm/jdk-community:latest`, the image will be updated for 23.1.x releases, but not for 23.0.0. +For instance, using `ghcr.io/graalvm/jdk-community:latest`, the image will be updated for 24.0.x releases, but not for 23.0.0. Using `ghcr.io/graalvm/native-image-community` you will always get the latest update available for Native Image GraalVM Community Edition, the latest OS which is now Oracle Linux 9 and Oracle Linux 9 slim, and the latest Java version. Note some terms and restrictions that may apply to the open source technology. diff --git a/graalpy-community/Dockerfile.debian b/graalpy-community/Dockerfile.debian index 5723043..09dc9e9 100644 --- a/graalpy-community/Dockerfile.debian +++ b/graalpy-community/Dockerfile.debian @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz WORKDIR /app @@ -26,7 +26,7 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && apt-get update -y \ - && apt-get install -y locales ca-certificates curl tar gzip libz-dev libssl-dev gcc make unzip patch \ + && apt-get install -y locales ca-certificates curl tar gzip libz-dev libssl-dev gcc g++ make unzip patch \ && rm -rf /var/lib/apt/lists/* @@ -37,7 +37,7 @@ RUN set -eux \ RUN sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \ && locale-gen -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD ["graalpy"] \ No newline at end of file diff --git a/graalpy-community/Dockerfile.ol7 b/graalpy-community/Dockerfile.ol7 index c5d1d91..3abc701 100644 --- a/graalpy-community/Dockerfile.ol7 +++ b/graalpy-community/Dockerfile.ol7 @@ -13,19 +13,20 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" WORKDIR /app ENV LANG=en_US.UTF-8 \ - PATH=/opt/graalpy-$GRAALVM_VERSION/bin:$PATH + PATH=/opt/graalpy-$GRAALVM_VERSION/bin:/opt/rh/devtoolset-10/root/usr/bin:$PATH RUN set -eux \ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum update -y oraclelinux-release-el7 \ - && yum install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en \ + && yum install -y oracle-softwarecollection-release-el7 \ + && yum install -y curl tar unzip gzip zlib openssl-devel gcc devtoolset-10-gcc-c++ make patch glibc-langpack-en \ && echo "" > /etc/yum/vars/ociregion \ && rm -rf /var/cache/yum @@ -33,7 +34,7 @@ RUN set -eux \ && mkdir -p /opt/graalpy-$GRAALVM_VERSION \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc ENTRYPOINT ["graalpy"] diff --git a/graalpy-community/Dockerfile.ol7-slim b/graalpy-community/Dockerfile.ol7-slim index 2ce5ef8..53b7a03 100644 --- a/graalpy-community/Dockerfile.ol7-slim +++ b/graalpy-community/Dockerfile.ol7-slim @@ -14,19 +14,20 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" WORKDIR /app ENV LANG=en_US.UTF-8 \ - PATH=/opt/graalpy-$GRAALVM_VERSION/bin:$PATH + PATH=/opt/graalpy-$GRAALVM_VERSION/bin:/opt/rh/devtoolset-10/root/usr/bin:$PATH RUN set -eux \ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum update -y oraclelinux-release-el7 \ - && yum install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en \ + && yum install -y oracle-softwarecollection-release-el7 \ + && yum install -y curl tar unzip gzip zlib openssl-devel gcc devtoolset-10-gcc-c++ make patch glibc-langpack-en \ && echo "" > /etc/yum/vars/ociregion \ && rm -rf /var/cache/yum @@ -34,7 +35,7 @@ RUN set -eux \ && mkdir -p /opt/graalpy-$GRAALVM_VERSION \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD [ "graalpy"] \ No newline at end of file diff --git a/graalpy-community/Dockerfile.ol8 b/graalpy-community/Dockerfile.ol8 index ab3e54a..e2830af 100644 --- a/graalpy-community/Dockerfile.ol8 +++ b/graalpy-community/Dockerfile.ol8 @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" @@ -26,7 +26,7 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && yum update -y oraclelinux-release-el8 \ - && yum install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en \ + && yum install -y curl tar unzip gzip zlib openssl-devel gcc gcc-c++ make patch glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/yum @@ -34,7 +34,7 @@ RUN set -eux \ && mkdir -p /opt/graalpy-$GRAALVM_VERSION \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD [ "graalpy"] \ No newline at end of file diff --git a/graalpy-community/Dockerfile.ol8-slim b/graalpy-community/Dockerfile.ol8-slim index f767721..b0db92b 100644 --- a/graalpy-community/Dockerfile.ol8-slim +++ b/graalpy-community/Dockerfile.ol8-slim @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" @@ -26,7 +26,7 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && microdnf update -y oraclelinux-release-el8 \ - && microdnf install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en \ + && microdnf install -y curl tar unzip gzip zlib openssl-devel gcc gcc-c++ make patch glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/dnf @@ -34,7 +34,7 @@ RUN set -eux \ && mkdir -p /opt/graalpy-$GRAALVM_VERSION \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD [ "graalpy"] \ No newline at end of file diff --git a/graalpy-community/Dockerfile.ol9 b/graalpy-community/Dockerfile.ol9 index 3fabdd1..6c7432d 100644 --- a/graalpy-community/Dockerfile.ol9 +++ b/graalpy-community/Dockerfile.ol9 @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" @@ -26,7 +26,7 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && dnf install oraclelinux-release-el9 \ - && dnf install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en libxcrypt-compat \ + && dnf install -y curl tar unzip gzip zlib openssl-devel gcc gcc-c++ make patch glibc-langpack-en libxcrypt-compat \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/dnf @@ -35,7 +35,7 @@ RUN set -eux \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD ["graalpy"] \ No newline at end of file diff --git a/graalpy-community/Dockerfile.ol9-slim b/graalpy-community/Dockerfile.ol9-slim index 434926b..a1fdccc 100644 --- a/graalpy-community/Dockerfile.ol9-slim +++ b/graalpy-community/Dockerfile.ol9-slim @@ -13,7 +13,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalPy is the GraalVM high-performance implementation of the Python programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG GRAALVM_PKG=https://github.com/oracle/graalpython/releases/download/graal-$GRAALVM_VERSION/graalpy-community-$GRAALVM_VERSION-linux-amd64.tar.gz ARG TEMP_REGION="" @@ -25,7 +25,7 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && microdnf install oraclelinux-release-el9 \ - && microdnf install -y curl tar unzip gzip zlib openssl-devel gcc make patch glibc-langpack-en libxcrypt-compat \ + && microdnf install -y curl tar unzip gzip zlib openssl-devel gcc gcc-c++ make patch glibc-langpack-en libxcrypt-compat \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/dnf @@ -33,7 +33,7 @@ RUN set -eux \ && mkdir -p /opt/graalpy-$GRAALVM_VERSION \ && curl --fail --silent --location --retry 3 $GRAALVM_PKG | gunzip | tar x -C /opt/graalpy-$GRAALVM_VERSION --strip-components=1 -RUN graalpy -m venv graalenv && \ - echo "source graalenv/bin/activate" >> ~/.bashrc +RUN graalpy -m venv graalenv \ + && echo "source graalenv/bin/activate" >> ~/.bashrc CMD [ "graalpy"] \ No newline at end of file diff --git a/graalvm-community/Dockerfile.ol7-java20 b/graalvm-community/Dockerfile.ol7-java20 deleted file mode 100644 index 0965fb3..0000000 --- a/graalvm-community/Dockerfile.ol7-java20 +++ /dev/null @@ -1,55 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:7-slim - -FROM ${BASE_IMAGE} - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg "https_proxy=..." --build-arg "http_proxy=..." --build-arg "no_proxy=..." ... -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/graalvm-community' \ - org.opencontainers.image.title='GraalVM Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - -RUN yum update -y oraclelinux-release-el7 \ - && yum install -y oraclelinux-developer-release-el7 oracle-softwarecollection-release-el7 \ - && yum-config-manager --enable ol7_developer \ - && yum-config-manager --enable ol7_developer_EPEL \ - && yum-config-manager --enable ol7_optional_latest \ - && yum install -y bzip2-devel ed gcc gcc-c++ gcc-gfortran gzip file fontconfig less libcurl-devel make openssl openssl-devel readline-devel tar vi which xz-devel zlib-devel \ - && yum install -y glibc-static libcxx libcxx-devel libstdc++-static zlib-static \ - && rm -rf /var/cache/yum - -RUN fc-cache -f -v - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=java20 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION - -COPY gu-wrapper.sh /usr/local/bin/gu -RUN set -eux \ - && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ - && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ - # Set alternative links - && mkdir -p "/usr/java" \ - && ln -sfT "$JAVA_HOME" /usr/java/default \ - && ln -sfT "$JAVA_HOME" /usr/java/latest \ - && for bin in "$JAVA_HOME/bin/"*; do \ - base="$(basename "$bin")"; \ - [ ! -e "/usr/bin/$base" ]; \ - alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu - -CMD java -version diff --git a/graalvm-community/Dockerfile.ol7-java17 b/graalvm-community/Dockerfile.ol7-java22 similarity index 87% rename from graalvm-community/Dockerfile.ol7-java17 rename to graalvm-community/Dockerfile.ol7-java22 index 87beac3..501870e 100644 --- a/graalvm-community/Dockerfile.ol7-java17 +++ b/graalvm-community/Dockerfile.ol7-java22 @@ -15,7 +15,9 @@ LABEL \ org.opencontainers.image.title='GraalVM Community Edition' \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - + +ARG TARGETPLATFORM + RUN yum update -y oraclelinux-release-el7 \ && yum install -y oraclelinux-developer-release-el7 oracle-softwarecollection-release-el7 \ && yum-config-manager --enable ol7_developer \ @@ -27,21 +29,20 @@ RUN yum update -y oraclelinux-release-el7 \ RUN fc-cache -f -v -ARG GRAALVM_VERSION=23.0.0 -ARG JDK_BUILD=17.0.7 -ARG JAVA_VERSION=java17 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 +ARG JDK_VERSION=22.0.2 +ARG JDK_BUILD=+9.1 +ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JDK_VERSION}/graalvm-community-jdk-${JDK_VERSION}_GRAALVM_ARCH_bin.tar.gz ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION + JAVA_HOME=/opt/graalvm-community-java$JDK_MAJOR_VERSION -COPY gu-wrapper.sh /usr/local/bin/gu RUN set -eux \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ + | gunzip | tar x -C /opt/ \ + && mv /opt/graalvm-community-openjdk-$JDK_VERSION$JDK_BUILD $JAVA_HOME \ # Set alternative links && mkdir -p "/usr/java" \ && ln -sfT "$JAVA_HOME" /usr/java/default \ @@ -50,7 +51,6 @@ RUN set -eux \ base="$(basename "$bin")"; \ [ ! -e "/usr/bin/$base" ]; \ alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu + done CMD java -version diff --git a/graalvm-community/Dockerfile.ol8-java20 b/graalvm-community/Dockerfile.ol8-java20 deleted file mode 100644 index 318e58f..0000000 --- a/graalvm-community/Dockerfile.ol8-java20 +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright (c) 2020, 2022 Oracle and/or its affiliates. -# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/ - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:8-slim - -FROM ${BASE_IMAGE} - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg "https_proxy=..." --build-arg "http_proxy=..." --build-arg "no_proxy=..." ... -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/graalvm-community' \ - org.opencontainers.image.title='GraalVM Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - -RUN microdnf update -y oraclelinux-release-el8 \ - && microdnf --enablerepo ol8_codeready_builder install bzip2-devel ed gcc gcc-c++ gcc-gfortran gzip file fontconfig less libcurl-devel make openssl openssl-devel readline-devel tar glibc-langpack-en \ - vi which xz-devel zlib-devel findutils glibc-static libstdc++ libstdc++-devel libstdc++-static zlib-static \ - && microdnf clean all - -RUN fc-cache -f -v - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=java20 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION - -COPY gu-wrapper.sh /usr/local/bin/gu -RUN set -eux \ - && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ - && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ - # Set alternative links - && mkdir -p "/usr/java" \ - && ln -sfT "$JAVA_HOME" /usr/java/default \ - && ln -sfT "$JAVA_HOME" /usr/java/latest \ - && for bin in "$JAVA_HOME/bin/"*; do \ - base="$(basename "$bin")"; \ - [ ! -e "/usr/bin/$base" ]; \ - alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu - -CMD java -version diff --git a/graalvm-community/Dockerfile.ol8-java17 b/graalvm-community/Dockerfile.ol8-java22 similarity index 86% rename from graalvm-community/Dockerfile.ol8-java17 rename to graalvm-community/Dockerfile.ol8-java22 index ecb5b9c..082282c 100644 --- a/graalvm-community/Dockerfile.ol8-java17 +++ b/graalvm-community/Dockerfile.ol8-java22 @@ -13,7 +13,9 @@ LABEL \ org.opencontainers.image.title='GraalVM Community Edition' \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - + +ARG TARGETPLATFORM + RUN microdnf update -y oraclelinux-release-el8 \ && microdnf --enablerepo ol8_codeready_builder install bzip2-devel ed gcc gcc-c++ gcc-gfortran gzip file fontconfig less libcurl-devel make openssl openssl-devel readline-devel tar glibc-langpack-en \ vi which xz-devel zlib-devel findutils glibc-static libstdc++ libstdc++-devel libstdc++-static zlib-static \ @@ -21,20 +23,20 @@ RUN microdnf update -y oraclelinux-release-el8 \ RUN fc-cache -f -v -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=java17 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 +ARG JDK_VERSION=22.0.2 +ARG JDK_BUILD=+9.1 +ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JDK_VERSION}/graalvm-community-jdk-${JDK_VERSION}_GRAALVM_ARCH_bin.tar.gz ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION + JAVA_HOME=/opt/graalvm-community-java$JDK_MAJOR_VERSION -COPY gu-wrapper.sh /usr/local/bin/gu RUN set -eux \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ + | gunzip | tar x -C /opt/ \ + && mv /opt/graalvm-community-openjdk-$JDK_VERSION$JDK_BUILD $JAVA_HOME \ # Set alternative links && mkdir -p "/usr/java" \ && ln -sfT "$JAVA_HOME" /usr/java/default \ @@ -43,7 +45,6 @@ RUN set -eux \ base="$(basename "$bin")"; \ [ ! -e "/usr/bin/$base" ]; \ alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu + done CMD java -version diff --git a/graalvm-community/Dockerfile.ol9-java20 b/graalvm-community/Dockerfile.ol9-java20 deleted file mode 100644 index 057ddc5..0000000 --- a/graalvm-community/Dockerfile.ol9-java20 +++ /dev/null @@ -1,49 +0,0 @@ -# Copyright (c) 2020, 2022 Oracle and/or its affiliates. -# Licensed under the Universal Permissive License v 1.0 as shown at https://oss.oracle.com/licenses/upl/ - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:9-slim - -FROM ${BASE_IMAGE} - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg "https_proxy=..." --build-arg "http_proxy=..." --build-arg "no_proxy=..." ... -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/graalvm-community' \ - org.opencontainers.image.title='GraalVM Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - -RUN microdnf update -y oraclelinux-release-el9 \ - && microdnf --enablerepo ol9_codeready_builder install -y bzip2-devel ed gcc gcc-c++ gcc-gfortran gzip file fontconfig less libcurl-devel make openssl openssl-devel readline-devel tar glibc-langpack-en \ - vi which xz-devel zlib-devel findutils glibc-static libstdc++ libstdc++-devel libstdc++-static zlib-static libxcrypt-compat \ - && microdnf clean all - -RUN fc-cache -f -v - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=java20 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION - -COPY gu-wrapper.sh /usr/local/bin/gu -RUN set -eux \ - && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ - && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ - # Set alternative links - && mkdir -p "/usr/java" \ - && ln -sfT "$JAVA_HOME" /usr/java/default \ - && ln -sfT "$JAVA_HOME" /usr/java/latest \ - && for bin in "$JAVA_HOME/bin/"*; do \ - base="$(basename "$bin")"; \ - [ ! -e "/usr/bin/$base" ]; \ - alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu - -CMD java -version diff --git a/graalvm-community/Dockerfile.ol9-java17 b/graalvm-community/Dockerfile.ol9-java22 similarity index 86% rename from graalvm-community/Dockerfile.ol9-java17 rename to graalvm-community/Dockerfile.ol9-java22 index 52bf83c..8a3bbd4 100644 --- a/graalvm-community/Dockerfile.ol9-java17 +++ b/graalvm-community/Dockerfile.ol9-java22 @@ -13,7 +13,9 @@ LABEL \ org.opencontainers.image.title='GraalVM Community Edition' \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='GraalVM is a universal virtual machine for running applications written in JavaScript, Python, Ruby, R, JVM-based languages like Java, Scala, Clojure, Kotlin, and LLVM-based languages such as C and C++.' - + +ARG TARGETPLATFORM + RUN microdnf update -y oraclelinux-release-el9 \ && microdnf --enablerepo ol9_codeready_builder install -y bzip2-devel ed gcc gcc-c++ gcc-gfortran gzip file fontconfig less libcurl-devel make openssl openssl-devel readline-devel tar glibc-langpack-en \ vi which xz-devel zlib-devel findutils glibc-static libstdc++ libstdc++-devel libstdc++-static zlib-static libxcrypt-compat \ @@ -21,20 +23,20 @@ RUN microdnf update -y oraclelinux-release-el9 \ RUN fc-cache -f -v -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=java17 -ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-$JDK_BUILD/graalvm-community-jdk-$JDK_BUILD_GRAALVM_ARCH_bin.tar.gz -ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 +ARG JDK_VERSION=22.0.2 +ARG JDK_BUILD=+9.1 +ARG GRAALVM_PKG=https://github.com/graalvm/graalvm-ce-builds/releases/download/jdk-${JDK_VERSION}/graalvm-community-jdk-${JDK_VERSION}_GRAALVM_ARCH_bin.tar.gz ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/opt/graalvm-community-$JAVA_VERSION + JAVA_HOME=/opt/graalvm-community-java$JDK_MAJOR_VERSION -COPY gu-wrapper.sh /usr/local/bin/gu RUN set -eux \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-x64}; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then GRAALVM_PKG=${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64}; fi \ && curl --fail --silent --location --retry 3 ${GRAALVM_PKG} \ - | gunzip | tar x -C /opt/ \ + | gunzip | tar x -C /opt/ \ + && mv /opt/graalvm-community-openjdk-$JDK_VERSION$JDK_BUILD $JAVA_HOME \ # Set alternative links && mkdir -p "/usr/java" \ && ln -sfT "$JAVA_HOME" /usr/java/default \ @@ -43,7 +45,6 @@ RUN set -eux \ base="$(basename "$bin")"; \ [ ! -e "/usr/bin/$base" ]; \ alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; \ - done \ - && chmod +x /usr/local/bin/gu + done CMD java -version diff --git a/graalvm-community/gu-wrapper.sh b/graalvm-community/gu-wrapper.sh deleted file mode 100644 index 5ee9247..0000000 --- a/graalvm-community/gu-wrapper.sh +++ /dev/null @@ -1,30 +0,0 @@ -#!/usr/bin/env bash -# -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -$JAVA_HOME/bin/gu "${@}" -RT=$? -if [ $RT -ne 0 ]; then - exit $RT -fi - -# Only run on *install operations -if [[ "$@" == *"install"* ]]; then - - # Add new links for newly installed components - for bin in "$JAVA_HOME/bin/"*; do - base="$(basename "$bin")"; - if [[ ! -e "/usr/bin/$base" ]]; then - alternatives --install "/usr/bin/$base" "$base" "$bin" 20000; - fi - done; - - # Remove dead links from uninstalled components - find /usr/bin -xtype l -delete - - echo "Refreshed alternative links in /usr/bin/" -fi - diff --git a/rpm-compact/jdk-community/Dockerfile.ol7-java20 b/rpm-compact/jdk-community/Dockerfile.ol7-java20 deleted file mode 100644 index 18a85ce..0000000 --- a/rpm-compact/jdk-community/Dockerfile.ol7-java20 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:7-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/graalvm-community' \ - org.opencontainers.image.title='GraalVM Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Java Developer Kit contains a complete set of tools for Java applications development, such as debugger, profiler, and others.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_CURRENT \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-jdk-${JDK_BUILD} \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_DEFAULT\$basearch \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -CMD java --version - diff --git a/rpm-compact/jdk-community/Dockerfile.ol7-java17 b/rpm-compact/jdk-community/Dockerfile.ol7-java22 similarity index 90% rename from rpm-compact/jdk-community/Dockerfile.ol7-java17 rename to rpm-compact/jdk-community/Dockerfile.ol7-java22 index 80eacb4..c361809 100644 --- a/rpm-compact/jdk-community/Dockerfile.ol7-java17 +++ b/rpm-compact/jdk-community/Dockerfile.ol7-java22 @@ -17,14 +17,14 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ ARG TEMP_REGION="" ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} + JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JDK_MAJOR_VERSION} WORKDIR /app @@ -39,7 +39,7 @@ enabled=1\ " > /etc/yum.repos.d/ol7_graalvm_community.repo \ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-jdk \ + && yum install -y graalvm-community-${JDK_MAJOR_VERSION}-jdk \ && rm -rf /var/cache/yum \ && echo "" > /etc/yum/vars/ociregion \ && echo -e "\ diff --git a/rpm-compact/jdk-community/Dockerfile.ol8-java20 b/rpm-compact/jdk-community/Dockerfile.ol8-java20 deleted file mode 100644 index b71a507..0000000 --- a/rpm-compact/jdk-community/Dockerfile.ol8-java20 +++ /dev/null @@ -1,55 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:8-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/jdk-community' \ - org.opencontainers.image.title='JDK Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Java Developer Kit contains a complete set of tools for Java applications development, such as debugger, profiler, and others.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-jdk \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -CMD java --version diff --git a/rpm-compact/jdk-community/Dockerfile.ol8-java17 b/rpm-compact/jdk-community/Dockerfile.ol8-java22 similarity index 91% rename from rpm-compact/jdk-community/Dockerfile.ol8-java17 rename to rpm-compact/jdk-community/Dockerfile.ol8-java22 index 3230f33..5ba5a8a 100644 --- a/rpm-compact/jdk-community/Dockerfile.ol8-java17 +++ b/rpm-compact/jdk-community/Dockerfile.ol8-java22 @@ -18,16 +18,14 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 -ARG PLATFORM +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ ARG TEMP_REGION="" ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} + JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JDK_MAJOR_VERSION} WORKDIR /app @@ -41,7 +39,7 @@ gpgcheck=1\n\ enabled=1\ " > /etc/yum.repos.d/ol8_graalvm_community.repo \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-jdk \ + && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JDK_MAJOR_VERSION}-jdk \ && rm -rf /var/cache/yum \ && echo "" > /etc/dnf/vars/ociregion \ && echo -e "\ diff --git a/rpm-compact/jdk-community/Dockerfile.ol9-java17 b/rpm-compact/jdk-community/Dockerfile.ol9-java17 deleted file mode 100644 index 48c5ee1..0000000 --- a/rpm-compact/jdk-community/Dockerfile.ol9-java17 +++ /dev/null @@ -1,55 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:9-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/jdk-community' \ - org.opencontainers.image.title='JDK Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Java Developer Kit contains a complete set of tools for Java applications development, such as debugger, profiler, and others.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JAVA_VERSION}-jdk \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -CMD java --version diff --git a/rpm-compact/jdk-community/Dockerfile.ol9-java20 b/rpm-compact/jdk-community/Dockerfile.ol9-java22 similarity index 97% rename from rpm-compact/jdk-community/Dockerfile.ol9-java20 rename to rpm-compact/jdk-community/Dockerfile.ol9-java22 index 50a3674..44cea24 100644 --- a/rpm-compact/jdk-community/Dockerfile.ol9-java20 +++ b/rpm-compact/jdk-community/Dockerfile.ol9-java22 @@ -17,10 +17,8 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG PLATFORM +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ ARG TEMP_REGION="" diff --git a/rpm-compact/native-image-community/Dockerfile.ol7-java17-muslib b/rpm-compact/native-image-community/Dockerfile.ol7-java17-muslib deleted file mode 100644 index 2cde64c..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol7-java17-muslib +++ /dev/null @@ -1,52 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:17-ol7 - -FROM ${BASE_IMAGE} as base - -FROM base as muslib - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -ARG TEMP_REGION="" - -ARG MUSL_LOCATION=http://more.musl.cc/10/x86_64-linux-musl/x86_64-linux-musl-native.tgz - -ARG ZLIB_LOCATION=https://zlib.net/fossils/zlib-1.2.11.tar.gz - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -RUN yum-config-manager --disable ol7_graalvm_community \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && mkdir -p $TOOLCHAIN_DIR \ - && yum install -y wget tar gzip make gunzip \ - && wget $MUSL_LOCATION && tar -xvf x86_64-linux-musl-native.tgz -C $TOOLCHAIN_DIR --strip-components=1 \ - && wget $ZLIB_LOCATION && tar -xvf zlib-1.2.11.tar.gz \ - && cd zlib-1.2.11 \ - && ./configure --prefix=$TOOLCHAIN_DIR --static \ - && make && make install - -FROM base as final -COPY --from=muslib /usr/local/musl /usr/local/musl - -RUN yum-config-manager --enable ol7_graalvm_community \ - && echo "" > /etc/yum/vars/ociregion - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -ENV PATH=$TOOLCHAIN_DIR/bin:$PATH - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] \ No newline at end of file diff --git a/rpm-compact/native-image-community/Dockerfile.ol7-java20 b/rpm-compact/native-image-community/Dockerfile.ol7-java20 deleted file mode 100644 index 3b2f54a..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol7-java20 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:7-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum-config-manager --enable ol7_optional_latest \ - && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-native-image \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] diff --git a/rpm-compact/native-image-community/Dockerfile.ol7-java17 b/rpm-compact/native-image-community/Dockerfile.ol7-java22 similarity index 91% rename from rpm-compact/native-image-community/Dockerfile.ol7-java17 rename to rpm-compact/native-image-community/Dockerfile.ol7-java22 index 9c31a80..d39783b 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol7-java17 +++ b/rpm-compact/native-image-community/Dockerfile.ol7-java22 @@ -17,14 +17,14 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ ARG TEMP_REGION="" ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} + JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JDK_MAJOR_VERSION} WORKDIR /app @@ -40,7 +40,7 @@ enabled=1\ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum-config-manager --enable ol7_optional_latest \ && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-native-image \ + && yum install -y graalvm-community-${JDK_MAJOR_VERSION}-native-image \ && rm -rf /var/cache/yum \ && echo "" > /etc/yum/vars/ociregion \ && echo -e "\ diff --git a/rpm-compact/native-image-community/Dockerfile.ol7-java20-muslib b/rpm-compact/native-image-community/Dockerfile.ol7-java22-muslib similarity index 95% rename from rpm-compact/native-image-community/Dockerfile.ol7-java20-muslib rename to rpm-compact/native-image-community/Dockerfile.ol7-java22-muslib index 40b493a..c7f6da5 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol7-java20-muslib +++ b/rpm-compact/native-image-community/Dockerfile.ol7-java22-muslib @@ -3,9 +3,7 @@ # Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. # -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:20-ol7 +ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:22-ol7 FROM ${BASE_IMAGE} as base diff --git a/rpm-compact/native-image-community/Dockerfile.ol8-java17-muslib b/rpm-compact/native-image-community/Dockerfile.ol8-java17-muslib deleted file mode 100644 index 5253f0b..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol8-java17-muslib +++ /dev/null @@ -1,51 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:17-ol8 - -FROM ${BASE_IMAGE} as base - -FROM base as muslib - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -ARG TEMP_REGION="" - -ARG MUSL_LOCATION=http://more.musl.cc/10/x86_64-linux-musl/x86_64-linux-musl-native.tgz - -ARG ZLIB_LOCATION=https://zlib.net/fossils/zlib-1.2.11.tar.gz - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -RUN echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && rm -rf /etc/yum.repos.d/ol8_graalvm_community.repo \ - && mkdir -p $TOOLCHAIN_DIR \ - && microdnf install -y wget tar gzip make \ - && wget $MUSL_LOCATION && tar -xvf x86_64-linux-musl-native.tgz -C $TOOLCHAIN_DIR --strip-components=1 \ - && wget $ZLIB_LOCATION && tar -xvf zlib-1.2.11.tar.gz \ - && cd zlib-1.2.11 \ - && ./configure --prefix=$TOOLCHAIN_DIR --static \ - && make && make install - -FROM base as final -COPY --from=muslib /usr/local/musl /usr/local/musl - -RUN echo "" > /etc/dnf/vars/ociregion - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -ENV PATH=$TOOLCHAIN_DIR/bin:$PATH - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] \ No newline at end of file diff --git a/rpm-compact/native-image-community/Dockerfile.ol8-java20 b/rpm-compact/native-image-community/Dockerfile.ol8-java20 deleted file mode 100644 index 68996df..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol8-java20 +++ /dev/null @@ -1,54 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:8-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-native-image \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] diff --git a/rpm-compact/native-image-community/Dockerfile.ol8-java17 b/rpm-compact/native-image-community/Dockerfile.ol8-java22 similarity index 92% rename from rpm-compact/native-image-community/Dockerfile.ol8-java17 rename to rpm-compact/native-image-community/Dockerfile.ol8-java22 index ef61b56..1772cf0 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol8-java17 +++ b/rpm-compact/native-image-community/Dockerfile.ol8-java22 @@ -17,14 +17,14 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ ARG TEMP_REGION="" ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} + JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JDK_MAJOR_VERSION} WORKDIR /app @@ -38,7 +38,7 @@ gpgcheck=1\n\ enabled=1\ " > /etc/yum.repos.d/ol8_graalvm_community.repo \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-native-image \ + && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JDK_MAJOR_VERSION}-native-image \ && rm -rf /var/cache/yum \ && echo "" > /etc/dnf/vars/ociregion \ && echo -e "\ diff --git a/rpm-compact/native-image-community/Dockerfile.ol8-java20-muslib b/rpm-compact/native-image-community/Dockerfile.ol8-java22-muslib similarity index 95% rename from rpm-compact/native-image-community/Dockerfile.ol8-java20-muslib rename to rpm-compact/native-image-community/Dockerfile.ol8-java22-muslib index 6b0c726..497777d 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol8-java20-muslib +++ b/rpm-compact/native-image-community/Dockerfile.ol8-java22-muslib @@ -3,9 +3,7 @@ # Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. # -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:20-ol8 +ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:22-ol8 FROM ${BASE_IMAGE} as base diff --git a/rpm-compact/native-image-community/Dockerfile.ol9-java17-muslib b/rpm-compact/native-image-community/Dockerfile.ol9-java17-muslib deleted file mode 100644 index 6afdcc9..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol9-java17-muslib +++ /dev/null @@ -1,51 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:17-ol9 - -FROM ${BASE_IMAGE} as base - -FROM base as muslib - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -ARG TEMP_REGION="" - -ARG MUSL_LOCATION=http://more.musl.cc/10/x86_64-linux-musl/x86_64-linux-musl-native.tgz - -ARG ZLIB_LOCATION=https://zlib.net/fossils/zlib-1.2.11.tar.gz - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -RUN echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && rm -rf /etc/yum.repos.d/ol9_graalvm_community.repo \ - && mkdir -p $TOOLCHAIN_DIR \ - && microdnf install -y wget tar gzip make \ - && wget $MUSL_LOCATION && tar -xvf x86_64-linux-musl-native.tgz -C $TOOLCHAIN_DIR --strip-components=1 \ - && wget $ZLIB_LOCATION && tar -xvf zlib-1.2.11.tar.gz \ - && cd zlib-1.2.11 \ - && ./configure --prefix=$TOOLCHAIN_DIR --static \ - && make && make install - -FROM base as final -COPY --from=muslib /usr/local/musl /usr/local/musl - -RUN echo "" > /etc/dnf/vars/ociregion - -ENV TOOLCHAIN_DIR=/usr/local/musl \ - CC=$TOOLCHAIN_DIR/bin/gcc - -ENV PATH=$TOOLCHAIN_DIR/bin:$PATH - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] \ No newline at end of file diff --git a/rpm-compact/native-image-community/Dockerfile.ol9-java20 b/rpm-compact/native-image-community/Dockerfile.ol9-java20 deleted file mode 100644 index f3e897b..0000000 --- a/rpm-compact/native-image-community/Dockerfile.ol9-java20 +++ /dev/null @@ -1,54 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:9-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/native-image-community' \ - org.opencontainers.image.title='Native Image Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Native Image Community Edition ahead of time compilation functionality to generate under closed-world assumption an executable image or a shared object. This resulting binary includes the application, the libraries, the JDK and does not run on the Java VM, but includes necessary components like memory management and thread scheduling etc..' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JAVA_VERSION}-native-image \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -ENTRYPOINT [ "native-image" ] -CMD [ "--version" ] diff --git a/rpm-compact/native-image-community/Dockerfile.ol9-java17 b/rpm-compact/native-image-community/Dockerfile.ol9-java22 similarity index 92% rename from rpm-compact/native-image-community/Dockerfile.ol9-java17 rename to rpm-compact/native-image-community/Dockerfile.ol9-java22 index 0384099..a931f36 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol9-java17 +++ b/rpm-compact/native-image-community/Dockerfile.ol9-java22 @@ -17,14 +17,14 @@ LABEL \ # Note: If you are behind a web proxy, set the build variables for the build: # E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 +ARG TARGETPLATFORM +ARG JDK_MAJOR_VERSION=22 ARG YUM_REPO="" ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ ARG TEMP_REGION="" ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} + JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JDK_MAJOR_VERSION} WORKDIR /app @@ -38,7 +38,7 @@ gpgcheck=1\n\ enabled=1\ " > /etc/yum.repos.d/ol9_graalvm_community.repo \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JAVA_VERSION}-native-image \ + && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JDK_MAJOR_VERSION}-native-image \ && rm -rf /var/cache/yum \ && echo "" > /etc/dnf/vars/ociregion \ && echo -e "\ diff --git a/rpm-compact/native-image-community/Dockerfile.ol9-java20-muslib b/rpm-compact/native-image-community/Dockerfile.ol9-java22-muslib similarity index 95% rename from rpm-compact/native-image-community/Dockerfile.ol9-java20-muslib rename to rpm-compact/native-image-community/Dockerfile.ol9-java22-muslib index 73dde4f..fb6ac35 100644 --- a/rpm-compact/native-image-community/Dockerfile.ol9-java20-muslib +++ b/rpm-compact/native-image-community/Dockerfile.ol9-java22-muslib @@ -3,9 +3,7 @@ # Copyright (c) 2015,2022 Oracle and/or its affiliates. All rights reserved. # -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:20-ol9 +ARG BASE_IMAGE=ghcr.io/graalvm/native-image-community:22-ol9 FROM ${BASE_IMAGE} as base diff --git a/rpm-compact/nodejs-community/Dockerfile.ol7-java17 b/rpm-compact/nodejs-community/Dockerfile.ol7-java17 deleted file mode 100644 index a8ff812..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol7-java17 +++ /dev/null @@ -1,57 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:7-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum update -y \ - && yum install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -CMD node --version \ No newline at end of file diff --git a/rpm-compact/nodejs-community/Dockerfile.ol7-java20 b/rpm-compact/nodejs-community/Dockerfile.ol7-java20 deleted file mode 100644 index 45b9416..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol7-java20 +++ /dev/null @@ -1,58 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:7-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum update -y \ - && yum install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -CMD node --version - diff --git a/rpm-compact/nodejs-community/Dockerfile.ol8-java17 b/rpm-compact/nodejs-community/Dockerfile.ol8-java17 deleted file mode 100644 index e14ffd3..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol8-java17 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:8-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -CMD node --version \ No newline at end of file diff --git a/rpm-compact/nodejs-community/Dockerfile.ol8-java20 b/rpm-compact/nodejs-community/Dockerfile.ol8-java20 deleted file mode 100644 index 6c99ff9..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol8-java20 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:8-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -CMD node --version \ No newline at end of file diff --git a/rpm-compact/nodejs-community/Dockerfile.ol9-java17 b/rpm-compact/nodejs-community/Dockerfile.ol9-java17 deleted file mode 100644 index ecc68ba..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol9-java17 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:9-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=17 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -CMD node --version \ No newline at end of file diff --git a/rpm-compact/nodejs-community/Dockerfile.ol9-java20 b/rpm-compact/nodejs-community/Dockerfile.ol9-java20 deleted file mode 100644 index d4be69e..0000000 --- a/rpm-compact/nodejs-community/Dockerfile.ol9-java20 +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG BASE_IMAGE=container-registry.oracle.com/os/oraclelinux:9-slim - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/nodejs-community' \ - org.opencontainers.image.title='Nodejs Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='GraalVM Node.js Community Edition runtime with the GraalVM JavaScript interpreter enabled as the JavaScript engine. It allows executing polyglot applications (e.g., using Java, R, Ruby or Python libraries), running Node.js with large heap configurations and Java’s garbage collectors, or using GraalVM’s interoperability to define data structures in C/C++ and use them from JavaScript.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG GRAALVM_VERSION=23.0.0 -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm${GRAALVM_YEAR_VERSION}-ce-${JAVA_VERSION}-nodejs-devel-${GRAALVM_VERSION} \ - && rm -rf /var/cache/yum \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/node /usr/local/bin/node \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npm /usr/local/bin/npm \ - && ln -s /usr/lib64/graalvm/graalvm${GRAALVM_YEAR_VERSION}-ce-java${JAVA_VERSION}/bin/npx /usr/local/bin/npx \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -CMD node --version \ No newline at end of file diff --git a/truffleruby-community/Dockerfile.debian b/truffleruby-community/Dockerfile.debian index bc141ca..8bc54eb 100644 --- a/truffleruby-community/Dockerfile.debian +++ b/truffleruby-community/Dockerfile.debian @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz @@ -27,14 +27,14 @@ SHELL ["/bin/bash", "-c"] RUN set -eux \ && apt-get update -y \ - && apt-get install -y locales ca-certificates curl tar gzip libz-dev libssl-dev gcc make \ + && apt-get install -y locales libyaml-dev ca-certificates curl tar gzip libz-dev libssl-dev gcc make \ && rm -rf /var/lib/apt/lists/* RUN set -eux \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ - sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \ + && sed -i '/en_US.UTF-8/s/^# //g' /etc/locale.gen \ && locale-gen \ && echo "gem: --no-document" > ~/.gemrc diff --git a/truffleruby-community/Dockerfile.ol7 b/truffleruby-community/Dockerfile.ol7 index 9afe90d..76c50a8 100644 --- a/truffleruby-community/Dockerfile.ol7 +++ b/truffleruby-community/Dockerfile.ol7 @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,12 +27,13 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum update -y oraclelinux-release-el7 \ - && yum install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en \ + && yum-config-manager --enable ol7_optional_latest \ + && yum install -y curl tar gzip zlib-devel libyaml-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/yum/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi -RUN echo "gem: --no-document" > ~/.gemrc + && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ + && echo "gem: --no-document" > ~/.gemrc CMD [ "irb" ] diff --git a/truffleruby-community/Dockerfile.ol7-java17-slim-jvm b/truffleruby-community/Dockerfile.ol7-java17-slim-jvm deleted file mode 100644 index 79a1d4f..0000000 --- a/truffleruby-community/Dockerfile.ol7-java17-slim-jvm +++ /dev/null @@ -1,55 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol7-java17-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - -ARG JAVA_VERSION=17 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_CURRENT \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_DEFAULT\$basearch \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -CMD java --version - diff --git a/truffleruby-community/Dockerfile.ol7-java20-slim-jvm b/truffleruby-community/Dockerfile.ol7-java20-slim-jvm deleted file mode 100644 index e2c47b2..0000000 --- a/truffleruby-community/Dockerfile.ol7-java20-slim-jvm +++ /dev/null @@ -1,57 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol7-java11-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG JAVA_VERSION=20 -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL7/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_CURRENT \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ - && yum update -y \ - && yum install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/yum/vars/ociregion \ - && echo -e "\ -[ol7_graalvm_community]\n\ -name=Oracle Linux 7 graalvm community \n\ -baseurl=$YUM_REPO_DEFAULT\$basearch \n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol7_graalvm_community.repo - -CMD java --version - diff --git a/truffleruby-community/Dockerfile.ol7-slim b/truffleruby-community/Dockerfile.ol7-slim index 42555cb..d04159c 100644 --- a/truffleruby-community/Dockerfile.ol7-slim +++ b/truffleruby-community/Dockerfile.ol7-slim @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,13 +27,14 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/yum/vars/ociregion \ && yum update -y oraclelinux-release-el7 \ - && yum install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en \ + && yum-config-manager --enable ol7_optional_latest \ + && yum install -y curl tar gzip zlib-devel libyaml-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/yum/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && rm -rf /opt/truffleruby-$GRAALVM_VERSION/lib/llvm-toolchain \ - && yum rm -rf gcc make + && yum remove -rf gcc make CMD [ "irb" ] diff --git a/truffleruby-community/Dockerfile.ol8 b/truffleruby-community/Dockerfile.ol8 index 61f72d0..03e8c81 100644 --- a/truffleruby-community/Dockerfile.ol8 +++ b/truffleruby-community/Dockerfile.ol8 @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,12 +27,12 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && dnf update -y oraclelinux-release-el8 \ - && dnf install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en \ + && dnf --enablerepo ol8_codeready_builder install -y curl tar gzip zlib-devel libyaml-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi -RUN echo "gem: --no-document" > ~/.gemrc + && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ + && echo "gem: --no-document" > ~/.gemrc CMD [ "irb" ] diff --git a/truffleruby-community/Dockerfile.ol8-java17-slim-jvm b/truffleruby-community/Dockerfile.ol8-java17-slim-jvm deleted file mode 100644 index b2771c5..0000000 --- a/truffleruby-community/Dockerfile.ol8-java17-slim-jvm +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol8-java17-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG JAVA_VERSION=17 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -CMD java --version diff --git a/truffleruby-community/Dockerfile.ol8-java20-slim-jvm b/truffleruby-community/Dockerfile.ol8-java20-slim-jvm deleted file mode 100644 index 70a0af3..0000000 --- a/truffleruby-community/Dockerfile.ol8-java20-slim-jvm +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol8-java11-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG JAVA_VERSION=20 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL8/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol8_codeready_builder install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol8_graalvm_community]\n\ -name=Oracle Linux 8 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol8_graalvm_community.repo - -CMD java --version diff --git a/truffleruby-community/Dockerfile.ol8-slim b/truffleruby-community/Dockerfile.ol8-slim index 36613fc..1286a64 100644 --- a/truffleruby-community/Dockerfile.ol8-slim +++ b/truffleruby-community/Dockerfile.ol8-slim @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,13 +27,13 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && microdnf update -y oraclelinux-release-el8 \ - && microdnf install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en \ + && microdnf --enablerepo ol8_codeready_builder install -y libyaml-devel curl tar gzip zlib-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && rm -rf /opt/truffleruby-$GRAALVM_VERSION/lib/llvm-toolchain \ - && microdnf rm -rf gcc make + && microdnf remove -y gcc make CMD [ "irb" ] diff --git a/truffleruby-community/Dockerfile.ol9 b/truffleruby-community/Dockerfile.ol9 index 93d1f2b..62fa32e 100644 --- a/truffleruby-community/Dockerfile.ol9 +++ b/truffleruby-community/Dockerfile.ol9 @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,12 +27,12 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && dnf update -y oraclelinux-release-el9 \ - && dnf install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en libxcrypt-compat \ + && dnf --enablerepo ol9_codeready_builder install -y curl tar gzip zlib-devel libyaml-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ - && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi -RUN echo "gem: --no-document" > ~/.gemrc + && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ + && echo "gem: --no-document" > ~/.gemrc CMD [ "irb" ] diff --git a/truffleruby-community/Dockerfile.ol9-java17-slim-jvm b/truffleruby-community/Dockerfile.ol9-java17-slim-jvm deleted file mode 100644 index 440201e..0000000 --- a/truffleruby-community/Dockerfile.ol9-java17-slim-jvm +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol9-java17-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG JAVA_VERSION=17 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -CMD java --version diff --git a/truffleruby-community/Dockerfile.ol9-java20-slim-jvm b/truffleruby-community/Dockerfile.ol9-java20-slim-jvm deleted file mode 100644 index fb957e1..0000000 --- a/truffleruby-community/Dockerfile.ol9-java20-slim-jvm +++ /dev/null @@ -1,56 +0,0 @@ -# LICENSE UPL 1.0 -# -# Copyright (c) 2023 Oracle and/or its affiliates. All rights reserved. -# - -ARG GRAALVM_VERSION=23.0.0 - -ARG BASE_IMAGE=ghcr.io/graalvm/jdk:ol9-java11-$GRAALVM_VERSION - -FROM ${BASE_IMAGE} - -LABEL \ - org.opencontainers.image.url='https://github.com/graalvm/container' \ - org.opencontainers.image.source='https://github.com/graalvm/container/tree/master/truffleruby-community' \ - org.opencontainers.image.title='TruffleRuby Community Edition' \ - org.opencontainers.image.authors='GraalVM Sustaining Team ' \ - org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' - -# Note: If you are behind a web proxy, set the build variables for the build: -# E.g.: docker build --build-arg 'https_proxy=...' --build-arg 'http_proxy=...' --build-arg 'no_proxy=...' ... - - -ARG JAVA_VERSION=20 -ARG PLATFORM -ARG YUM_REPO="" -ARG YUM_REPO_DEFAULT=https://yum.oracle.com/repo/OracleLinux/OL9/graalvm/community/ -ARG TEMP_REGION="" - -ENV LANG=en_US.UTF-8 \ - JAVA_HOME=/usr/lib64/graalvm/graalvm-community-java${JAVA_VERSION} - -WORKDIR /app - -RUN if [ "$YUM_REPO" == "" ]; then YUM_REPO_CURRENT="$YUM_REPO_DEFAULT\$basearch"; else YUM_REPO_CURRENT="$YUM_REPO"; fi \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_CURRENT\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo \ - && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ - && microdnf --enablerepo ol9_codeready_builder install -y graalvm-community-${JAVA_VERSION}-ruby-devel \ - && rm -rf /var/cache/yum \ - && echo "" > /etc/dnf/vars/ociregion \ - && echo -e "\ -[ol9_graalvm_community]\n\ -name=Oracle Linux 9 graalvm community (\$basearch)\n\ -baseurl=$YUM_REPO_DEFAULT\$basearch\n\ -gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle\n\ -gpgcheck=1\n\ -enabled=1\ -" > /etc/yum.repos.d/ol9_graalvm_community.repo - -CMD java --version diff --git a/truffleruby-community/Dockerfile.ol9-slim b/truffleruby-community/Dockerfile.ol9-slim index 740f3da..0cf4bff 100644 --- a/truffleruby-community/Dockerfile.ol9-slim +++ b/truffleruby-community/Dockerfile.ol9-slim @@ -14,7 +14,7 @@ LABEL \ org.opencontainers.image.authors='GraalVM Sustaining Team ' \ org.opencontainers.image.description='TruffleRuby is the GraalVM high-performance implementation of the Ruby programming language.' -ARG GRAALVM_VERSION=23.0.0 +ARG GRAALVM_VERSION=24.0.2 ARG TARGETPLATFORM ARG GRAALVM_PKG=https://github.com/oracle/truffleruby/releases/download/graal-$GRAALVM_VERSION/truffleruby-community-$GRAALVM_VERSION-GRAALVM_ARCH.tar.gz ARG TEMP_REGION="" @@ -27,13 +27,13 @@ ENV LANG=en_US.UTF-8 \ RUN set -eux \ && echo "$TEMP_REGION" > /etc/dnf/vars/ociregion \ && microdnf update -y oraclelinux-release-el9 \ - && microdnf install -y curl tar gzip zlib openssl-devel gcc make glibc-langpack-en libxcrypt-compat \ + && microdnf --enablerepo ol9_codeready_builder install -y curl tar gzip zlib-devel libyaml-devel openssl-devel gcc make glibc-langpack-en \ && echo "" > /etc/dnf/vars/ociregion \ && rm -rf /var/cache/yum \ && mkdir -p /opt/truffleruby-$GRAALVM_VERSION \ && if [ "$TARGETPLATFORM" == "linux/amd64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-amd64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && if [ "$TARGETPLATFORM" == "linux/arm64" ]; then (curl --fail --silent --location --retry 3 ${GRAALVM_PKG/GRAALVM_ARCH/linux-aarch64} | gunzip | tar x -C /opt/truffleruby-$GRAALVM_VERSION --strip-components=1) && /opt/truffleruby-$GRAALVM_VERSION/lib/truffle/post_install_hook.sh; fi \ && rm -rf /opt/truffleruby-$GRAALVM_VERSION/lib/llvm-toolchain \ - && microdnf rm -rf gcc make + && microdnf remove -y gcc make CMD [ "irb" ] diff --git a/truffleruby-community/README.md b/truffleruby-community/README.md index 6ac3f55..c617471 100644 --- a/truffleruby-community/README.md +++ b/truffleruby-community/README.md @@ -13,9 +13,9 @@ See https://github.com/graalvm/container/pkgs/container/truffleruby-community * Oracle Linux 9 no toolchain: [`slim`/`slim-VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile.ol9-slim). -* Oracle Linux 8: [`latest`/`VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile.ol8). +* Oracle Linux 8: [`ol8`/`ol8-VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile.ol8). -* Oracle Linux 8 no toolchain: [`slim`/`slim-VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile.ol8-slim). +* Oracle Linux 8 no toolchain: [`ol8-slim`/`ol8-slim-VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile.ol8-slim). * Oracle Linux 7: [`ol7`/`ol7-VERSION`](https://github.com/graalvm/container/blob/master/truffleruby-community/Dockerfile). @@ -68,7 +68,7 @@ RUN bundle exec ruby app.rb ## Installing system packages -### Oracle Linux 8 +### Oracle Linux 8 and 9 Use `microdnf install some-package`.