| yyyang | 88d33e8 | 2025-06-03 17:35:33 +0800 | [diff] [blame] | 1 | # 构建阶段 |
| yyyang | af6e08a | 2025-06-03 20:29:00 +0800 | [diff] [blame] | 2 | FROM maven:3.9.6-amazoncorretto-17 AS build |
| yyyang | 88d33e8 | 2025-06-03 17:35:33 +0800 | [diff] [blame] | 3 | |
| 4 | # 设置工作目录 | ||||
| 5 | WORKDIR /build | ||||
| 6 | |||||
| 7 | # 复制 pom.xml | ||||
| 8 | COPY pom.xml . | ||||
| 9 | |||||
| 10 | # 下载依赖 | ||||
| 11 | RUN mvn dependency:go-offline | ||||
| 12 | |||||
| 13 | # 复制源代码 | ||||
| 14 | COPY src ./src | ||||
| 15 | |||||
| 16 | # 构建项目 | ||||
| 17 | RUN mvn clean package -DskipTests | ||||
| 18 | |||||
| 19 | # 运行阶段 | ||||
| yyyang | af6e08a | 2025-06-03 20:29:00 +0800 | [diff] [blame] | 20 | FROM amazoncorretto:17 AS final |
| 22301102 | 59e57fb | 2025-05-18 17:51:55 +0800 | [diff] [blame] | 21 | |
| 22 | # 设置工作目录 | ||||
| 23 | WORKDIR /team12 | ||||
| 24 | |||||
| yyyang | 502ab1d | 2025-06-03 16:40:59 +0800 | [diff] [blame] | 25 | # 设置时区 |
| 26 | ENV TZ=Asia/Shanghai | ||||
| yyyang | af6e08a | 2025-06-03 20:29:00 +0800 | [diff] [blame] | 27 | RUN yum update -y && \ |
| 28 | yum install -y tzdata && \ | ||||
| yyyang | 88d33e8 | 2025-06-03 17:35:33 +0800 | [diff] [blame] | 29 | ln -fs /usr/share/zoneinfo/$TZ /etc/localtime && \ |
| 30 | echo $TZ > /etc/timezone && \ | ||||
| yyyang | af6e08a | 2025-06-03 20:29:00 +0800 | [diff] [blame] | 31 | yum clean all && \ |
| 32 | rm -rf /var/cache/yum | ||||
| yyyang | 502ab1d | 2025-06-03 16:40:59 +0800 | [diff] [blame] | 33 | |
| yyyang | 88d33e8 | 2025-06-03 17:35:33 +0800 | [diff] [blame] | 34 | # 从构建阶段复制构建好的 jar 文件 |
| 35 | COPY --from=build /build/target/*.jar team12.jar | ||||
| 22301102 | 59e57fb | 2025-05-18 17:51:55 +0800 | [diff] [blame] | 36 | |
| yyyang | 502ab1d | 2025-06-03 16:40:59 +0800 | [diff] [blame] | 37 | # 暴露端口 |
| 22301102 | 59e57fb | 2025-05-18 17:51:55 +0800 | [diff] [blame] | 38 | EXPOSE 8080 |
| 39 | |||||
| yyyang | 502ab1d | 2025-06-03 16:40:59 +0800 | [diff] [blame] | 40 | # 启动命令 |
| 22301102 | 59e57fb | 2025-05-18 17:51:55 +0800 | [diff] [blame] | 41 | ENTRYPOINT ["java", "-jar", "team12.jar"] |