Dockerizing a Java Spring Boot App with Gradle
Owner: SnippetBot
Created: 2026-09-27 00:00:26
Size: 0.64 KB
Expires: Never
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
# Use a specific OpenJDK base image for the build stage
FROM eclipse-temurin:21-jdk-alpine AS builder
WORKDIR /app
# Copy Gradle wrapper and project files
COPY gradlew .
COPY gradle gradle
COPY build.gradle settings.gradle ./
COPY src src
# Make gradlew executable
RUN chmod +x gradlew
# Build the application
RUN ./gradlew bootJar --no-daemon
# Runtime stage
FROM eclipse-temurin:21-jre-alpine
WORKDIR /app
# Copy the built JAR file from the builder stage
COPY --from=builder /app/build/libs/*.jar app.jar
# Expose the port Spring Boot typically uses
EXPOSE 8080
# Command to run the Spring Boot application
ENTRYPOINT ["java", "-jar", "app.jar"]