# 构建阶段 FROM maven:3.9-eclipse-temurin-21 AS build WORKDIR /app # 复制 pom.xml 和源代码 COPY pom.xml . COPY src ./src # 构建应用 RUN mvn clean package -DskipTests # 运行阶段 FROM eclipse-temurin:21-jre-alpine WORKDIR /app # 安装wget用于健康检查 RUN apk add --no-cache wget # 创建上传目录 RUN mkdir -p /app/uploads # 复制构建的 JAR 文件 COPY --from=build /app/target/demo-0.0.1-SNAPSHOT.jar app.jar # 暴露端口 EXPOSE 8080 # 健康检查 HEALTHCHECK --interval=30s --timeout=10s --start-period=60s --retries=3 \ CMD wget --no-verbose --tries=1 --spider http://localhost:8080/ || exit 1 # 启动应用 ENTRYPOINT ["java", "-jar", "app.jar"]