# Multi-stage: build backend JAR FROM maven:3.8.6-openjdk-8 AS backend-builder WORKDIR /build COPY ruoyi-bid/ . RUN mvn clean package -DskipTests -pl ruoyi-admin -am -q # Build frontend FROM node:20-alpine AS frontend-builder WORKDIR /ui COPY ruoyi-bid/ruoyi-ui/ . RUN npm config set registry https://registry.npmmirror.com && npm install --legacy-peer-deps && npm run build:prod # Final runtime image FROM openjdk:8-jre-slim WORKDIR /app COPY --from=backend-builder /build/ruoyi-admin/target/ruoyi-admin.jar app.jar COPY --from=frontend-builder /ui/dist /app/dist-ui EXPOSE 8080 ENTRYPOINT ["java", "-Djava.security.egd=file:/dev/./urandom", "-jar", "app.jar", "--spring.profiles.active=druid,prod"]