diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..53b6a11 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,29 @@ +# Build stage +FROM gradle:8.5-jdk17 AS builder + +WORKDIR /app + +# Copy gradle files +COPY server/build.gradle server/settings.gradle server/gradlew ./ +COPY server/gradle ./gradle + +# Copy source code +COPY server/src ./src + +# Make gradlew executable +RUN chmod +x ./gradlew + +# Build the application +RUN ./gradlew bootJar --no-daemon + +# Runtime stage +FROM eclipse-temurin:17-jre + +WORKDIR /app + +# Copy the built jar from builder stage +COPY --from=builder /app/build/libs/*.jar app.jar + +EXPOSE 8080 + +ENTRYPOINT ["java", "-jar", "app.jar"]