diff --git a/.gitea/workflows/build.yml b/.gitea/workflows/build.yml index e210fbe..db1dc1f 100644 --- a/.gitea/workflows/build.yml +++ b/.gitea/workflows/build.yml @@ -15,7 +15,7 @@ jobs: steps: - name: Install build tools run: | - apk add --no-cache curl git docker-cli 2>/dev/null || true + apk add --no-cache curl git docker-cli maven openjdk17 2>/dev/null || true - name: Clone + prepare run: | @@ -25,6 +25,11 @@ jobs: cd "$WORK" git clone https://joe:${GITEA_TOKEN}@git.cjjhc.top/joe/${{ env.APP_NAME }}.git . + - name: Build JAR + run: | + cd /root/.cache/${{ env.APP_NAME }} + mvn clean package -DskipTests + - name: Login to Harbor run: docker login ${{ env.REGISTRY }} -u admin -p "$HARBOR_PASSWORD" env: diff --git a/Dockerfile b/Dockerfile index bc40372..b31271b 100644 --- a/Dockerfile +++ b/Dockerfile @@ -1,16 +1,8 @@ -# Multi-stage build with Chinese registry mirror -FROM registry.cn-hangzhou.aliyuncs.com/chenxipan/maven:3.9-eclipse-temurin-17 AS builder - -WORKDIR /app -COPY pom.xml . -COPY src ./src -RUN mvn clean package -DskipTests - -# Production stage +# Production image - JAR is pre-built locally FROM eclipse-temurin:17-jre-alpine WORKDIR /app -COPY --from=builder /app/target/*.jar app.jar +COPY target/*.jar app.jar EXPOSE 8080