# Stage 1: Maven 构建(Docker 层缓存自动缓存依赖) FROM maven:3.9-eclipse-temurin-17 AS builder WORKDIR /app # 先复制 pom.xml,单独一层 —— 只要依赖不变,这层就被缓存 COPY pom.xml . RUN mvn dependency:go-offline -B -q # 再复制源码构建 COPY src/ ./src/ RUN mvn package -DskipTests -B -q # Stage 2: 运行时(精简 JRE) FROM eclipse-temurin:17-jre WORKDIR /app COPY --from=builder /app/target/LPT.jar LPT.jar EXPOSE 8888 ENTRYPOINT ["java", "-jar", "LPT.jar"] HEALTHCHECK --interval=10s --timeout=5s \ CMD curl --fail http://localhost:8888/actuator/health || exit 1