# Build stage FROM maven:3.9.9-eclipse-temurin-21-alpine AS build WORKDIR /app COPY pom.xml . # Download dependencies first for caching RUN mvn dependency:go-offline COPY src ./src # Build the application - this includes code generation from OpenAPI spec RUN mvn clean package -DskipTests # Run stage FROM eclipse-temurin:21-jre-alpine WORKDIR /app COPY --from=build /app/target/*.jar app.jar EXPOSE 8080 ENTRYPOINT ["java", "-jar", "app.jar"]