diff --git a/Dockerfile b/Dockerfile
index 16f616022b56fc860b1b920f7a0f43e8990136dd..3742c4db297857fdcb046f38032f0616bdbdddfd 100644
--- a/Dockerfile
+++ b/Dockerfile
@@ -1,10 +1,23 @@
 FROM gradle:jdk21 AS build
+
+WORKDIR /tmp
+RUN wget -O lego.tar.gz "https://github.com/go-acme/lego/releases/download/v4.22.2/lego_v4.22.2_linux_amd64.tar.gz" && tar -xzf lego.tar.gz && rm -f lego.tar.gz
+
 WORKDIR /home/gradle/project
-COPY --chown=gradle:gradle . .
+
+COPY --chown=gradle:gradle build.gradle settings.gradle .
+RUN gradle dependencies --no-daemon
+
+COPY --chown=gradle:gradle src ./src
 RUN gradle clean bootJar --no-daemon
 
-FROM openjdk:21-jdk-slim
+FROM eclipse-temurin:21-jre-alpine
+
+COPY --from=build /tmp/lego /usr/local/bin/lego
+RUN chmod +x /usr/local/bin/lego
+
 WORKDIR /app
 COPY --from=build /home/gradle/project/build/libs/*.jar app.jar
+
 EXPOSE 8080
 ENTRYPOINT ["java", "-jar", "app.jar"]