backend/Dockerfile-springboot
2025-08-03 02:39:47 +02:00

36 lines
1.1 KiB
Plaintext

# syntax=docker/dockerfile:1
FROM eclipse-temurin:23-jdk AS dependency
WORKDIR /app
COPY .mvn/ .mvn
COPY mvnw ./
COPY pom.xml ./
COPY domain/pom.xml domain/
COPY domain/spi/pom.xml domain/spi/
COPY domain/api/pom.xml domain/api/
COPY domain/service/pom.xml domain/service/
COPY domain/data/pom.xml domain/data/
COPY application/pom.xml application/
COPY infrastructure/pom.xml infrastructure/
COPY bootstrap/pom.xml bootstrap/
COPY common/pom.xml common/
ARG XPEDITIS_PROFILE
RUN ./mvnw -P${XPEDITIS_PROFILE} dependency:go-offline \
&& ./mvnw dependency:get -Dartifact=net.bytebuddy:byte-buddy-agent:1.15.11 -B \
&& ./mvnw dependency:get -Dartifact=org.mapstruct:mapstruct-processor:1.6.3 -B \
&& ./mvnw dependency:get -Dartifact=org.projectlombok:lombok-mapstruct-binding:0.2.0 -B
FROM dependency AS production
COPY domain/spi/src domain/spi/src
COPY domain/api/src domain/api/src
COPY domain/service/src domain/service/src
COPY domain/data/src domain/data/src
COPY application/src application/src
COPY infrastructure/src infrastructure/src
COPY bootstrap/src bootstrap/src
COPY common/src common/src
CMD ["./mvnw", "spring-boot:run"]