blob: 80076d7733d620be4e2a36f154cfd543edfe9223 [file] [log] [blame]
# Build stage
FROM registry.cn-hangzhou.aliyuncs.com/library/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
WORKDIR /app
COPY --from=build /app/target/*.jar app.jar
EXPOSE 8080
ENTRYPOINT ["java", "-jar", "app.jar"]