# Multi-stage build using local Harbor images # Stage 1: Build JAR FROM harbor.cjjhc.top/library/openjdk:25-jdk-slim AS builder WORKDIR /app # Install Maven RUN apt-get update && apt-get install -y maven && rm -rf /var/lib/apt/lists/* COPY pom.xml . COPY src ./src RUN mvn clean package -DskipTests # Stage 2: Production image FROM harbor.cjjhc.top/library/eclipse-temurin:25-jre-alpine WORKDIR /app COPY --from=builder /app/target/*.jar app.jar EXPOSE 8080 HEALTHCHECK --interval=30s --timeout=3s CMD wget -q -O- http://localhost:8080/actuator/health || exit 1 ENTRYPOINT ["java", "-jar", "app.jar"]