| 12345678910111213141516171819202122232425262728 |
- # --- Stage 1: Build ---
- FROM maven:3.9.0-eclipse-temurin-8 as mvn
- WORKDIR /app
- # 1. 复制 settings.xml
- COPY settings.xml /root/.m2/settings.xml
- # 2. 只复制 pom.xml 文件
- COPY pom.xml .
- # 3. 仅下载依赖。只要 pom.xml 不变,这一层就会被缓存
- RUN mvn dependency:go-offline
- # 4. 复制所有项目文件
- COPY . .
- # 5. 执行打包(此时不会再下载依赖,速度很快)
- RUN mvn clean package -DskipTests
- # --- Stage 2: Runtime ---
- FROM openjdk:8-jre-slim
- WORKDIR /app
- COPY --from=mvn /app/target/dalian-nft-api.jar app.jar
- EXPOSE 8888
- ENTRYPOINT ["java", "-jar", "app.jar"]
|