| 123456789101112131415161718192021222324252627282930 |
- # 构建阶段
- FROM maven:3.6.1 AS builder
- WORKDIR /app
- # 复制 Maven 配置文件
- COPY pom.xml .
- # 下载依赖(利用 Docker 缓存层)
- RUN mvn dependency:go-offline -B
- # 复制源代码并构建
- COPY src ./src
- RUN mvn clean package -DskipTests -B
- # 运行阶段
- FROM eclipse-temurin:21-jre-alpine
- WORKDIR /app
- # 从构建阶段复制 jar 包
- COPY --from=builder /app/target/*.jar app.jar
- # 设置文件所有权
- RUN chown -R appuser:appgroup /app
- # 切换到非 root 用户
- USER appuser
|