# ===== 第一阶段：构建阶段，使用 Maven 打包项目 =====
FROM maven:3.9-eclipse-temurin-17 AS build

# 设置工作目录
WORKDIR /app

# 复制项目文件和 Maven 配置
COPY . .
COPY settings.xml /root/.m2/settings.xml

# 执行打包（跳过测试）
RUN mvn clean package -DskipTests

# ===== 第二阶段：运行阶段，使用更小的 JRE Alpine 镜像 =====
FROM eclipse-temurin:17-jre-alpine

# 设置工作目录
WORKDIR /app

# 从构建阶段拷贝最终的 jar 包
COPY --from=build /app/target/SpringBoot-1.0-SNAPSHOT.jar app.jar

# 暴露端口（根据你的 application.properties 中 server.port）
EXPOSE 3000

# 启动 Spring Boot 应用
ENTRYPOINT ["java", "-jar", "app.jar"]
