| # Build stage |
| #FROM registry.cn-hangzhou.aliyuncs.com/library/maven:3.8.4-openjdk-17 as build |
| #WORKDIR /app |
| |
| FROM maven:3.8.4-openjdk-17 as build |
| WORKDIR /app |
| |
| # Create .m2 directory and copy settings.xml |
| #RUN mkdir -p /root/.m2 |
| #COPY settings.xml /root/.m2/settings.xml |
| |
| # Cache dependencies |
| COPY pom.xml . |
| RUN mvn dependency:go-offline -B |
| |
| # Build application |
| COPY src ./src |
| RUN mvn clean package -DskipTests |
| |
| # Production stage |
| #FROM registry.cn-hangzhou.aliyuncs.com/library/openjdk:17-slim |
| FROM openjdk:17-slim |
| WORKDIR /app |
| COPY --from=build /app/target/*.jar app.jar |
| EXPOSE 8080 |
| ENTRYPOINT ["java", "-jar", "app.jar"] |