FROM --platform=$BUILDPLATFORM maven:3.9-eclipse-temurin-21 AS backend-build WORKDIR /build COPY pom.xml . RUN mvn dependency:go-offline -B || true COPY src/ src/ RUN mvn clean package -DskipTests -B FROM --platform=$BUILDPLATFORM node:22-alpine AS ui-build WORKDIR /ui ARG REGISTRY_TOKEN COPY ui/package.json ui/package-lock.json ui/.npmrc ./ RUN echo "//gitea.siegeln.net/api/packages/cameleer/npm/:_authToken=${REGISTRY_TOKEN}" >> .npmrc && \ npm ci COPY ui/ . RUN npm run build FROM eclipse-temurin:21-jre WORKDIR /app COPY --from=backend-build /build/target/cameleer-deploy-demo-*.jar /app/server.jar COPY --from=ui-build /ui/dist /app/static EXPOSE 8082 ENV TZ=UTC ENTRYPOINT exec java -Duser.timezone=UTC \ -Dserver.port=8082 \ -Dspring.web.resources.static-locations=file:/app/static/ \ -jar /app/server.jar