Files
gitea-runners/Dockerfile.graalvm
rmcampos 00737b177a
Build and Push Java Runner / build-and-push (push) Successful in 2m20s
Update Dockerfile.graalvm
2026-07-07 23:30:03 +00:00

51 lines
1.7 KiB
Docker

FROM ghcr.io/graalvm/native-image-community:25 AS graalvm
# Create symlink to fix JAVA_HOME mismatch in base image
RUN mkdir -p /usr/lib/jvm && \
ln -s /usr/lib64/graalvm/graalvm-community-java25 /usr/lib/jvm/graalvm-community-java25
# Install build tools
RUN microdnf install -y \
curl \
git \
unzip \
zip \
wget \
findutils \
nodejs \
npm \
jq \
gnupg2 \
&& microdnf clean all
# Install Maven
ARG MAVEN_VERSION=3.9.9
RUN curl -fsSL https://archive.apache.org/dist/maven/maven-3/${MAVEN_VERSION}/binaries/apache-maven-${MAVEN_VERSION}-bin.tar.gz \
| tar -xz -C /opt && \
ln -s /opt/apache-maven-${MAVEN_VERSION}/bin/mvn /usr/local/bin/mvn
# Install Gradle
ARG GRADLE_VERSION=8.14
RUN curl -fsSL https://services.gradle.org/distributions/gradle-${GRADLE_VERSION}-bin.zip -o /tmp/gradle.zip && \
unzip /tmp/gradle.zip -d /opt && \
ln -s /opt/gradle-${GRADLE_VERSION}/bin/gradle /usr/local/bin/gradle && \
rm /tmp/gradle.zip
# Install Docker CLI only (static binary, no daemon/repo needed)
ARG DOCKER_VERSION=29.4.0
RUN curl -fsSL https://download.docker.com/linux/static/stable/x86_64/docker-${DOCKER_VERSION}.tgz \
| tar -xz -C /tmp && \
mv /tmp/docker/docker /usr/local/bin/docker && \
rm -rf /tmp/docker
# Install Docker Buildx plugin
ARG BUILDX_VERSION=0.21.2
RUN mkdir -p /usr/local/lib/docker/cli-plugins && \
curl -fsSL https://github.com/docker/buildx/releases/download/v${BUILDX_VERSION}/buildx-v${BUILDX_VERSION}.linux-amd64 \
-o /usr/local/lib/docker/cli-plugins/docker-buildx && \
chmod +x /usr/local/lib/docker/cli-plugins/docker-buildx
ENV JAVA_HOME=/usr/lib/jvm/graalvm-community-java25
CMD ["bash"]