Combinar Spring Boot com Docker é como unir dois jutsus poderosos: você ganha padronização, portabilidade, escala e deploy previsível.
Este guia reúne todos os passos essenciais, da build ao deploy final.
Primeiro, gere o arquivo .jar.
mvn clean package -DskipTests
O arquivo ficará em:
target/meu-projeto.jar
./gradlew bootJar
O .jar estará em:
build/libs
A forma mais recomendada hoje é usar multistage build, garantindo imagens leves e seguras.
# 🧱 Etapa 1 — Build
FROM maven:3.9.6-eclipse-temurin-17 AS builder
WORKDIR /build
COPY pom.xml .
COPY src ./src
RUN mvn clean package -DskipTests
# 🐳 Etapa 2 — Runtime (imagem final, leve)
FROM eclipse-temurin:17-jre-alpine
WORKDIR /app
# Copia apenas o JAR gerado
COPY --from=builder /build/target/*.jar app.jar
EXPOSE 8080
CMD ["java", "-jar", "app.jar"]