diff --git a/.dockerignore b/.dockerignore new file mode 100644 index 00000000..759858e6 --- /dev/null +++ b/.dockerignore @@ -0,0 +1,8 @@ +* +!gradlew +!gradle/ +!gradle/** +!build.gradle.kts +!settings.gradle.kts +!src/ +!src/** diff --git a/Dockerfile b/Dockerfile index 3a8158d0..2713f370 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,7 +1,6 @@ # Use a multi-stage build to keep the image size small -# Start with a Gradle image for building the project -#FROM gradle:jdk25-alpine as builder -FROM gradle:jdk25 AS builder +# Pin the builder so ARM64 deployments cannot reuse an older floating jdk25 image. +FROM gradle:9.6.1-jdk25 AS builder # Copy the Gradle wrapper and configuration files separately to leverage Docker cache COPY --chown=gradle:gradle gradlew /home/gradle/ @@ -16,6 +15,7 @@ RUN sed -i 's/\r$//' ./gradlew # Download dependencies - cached if build.gradle.kts and settings.gradle.kts are unchanged RUN chmod +x ./gradlew +RUN java -version RUN ./gradlew dependencies # Copy the project source, this layer is rebuilt whenever a file has changed diff --git a/settings.gradle.kts b/settings.gradle.kts index 5b0f8437..9b19339f 100644 --- a/settings.gradle.kts +++ b/settings.gradle.kts @@ -2,4 +2,8 @@ * This file was generated by the Gradle 'init' task. */ +plugins { + id("org.gradle.toolchains.foojay-resolver-convention") version "1.0.0" +} + rootProject.name = "AquaDX"