FROM quay.io/quarkus/ubi-quarkus-mandrel-builder-image:23.0-java17 AS builder

# a executer a la racine du projet

USER root
RUN microdnf install -y maven

COPY doodlestudent/api /app

WORKDIR /app

RUN ./mvnw dependency:resolve

COPY doodlestudent/api/src /app/src
RUN ./mvnw package -Pnative -DskipTests -Dquarkus.native.builder-opportunities=2 -Dquarkus.native.native-image-xmx=3g

RUN ls -l target

FROM registry.access.redhat.com/ubi8/ubi-minimal:8.8

WORKDIR /work/

COPY --from=builder --chown=1001:root /app/target/*-runner /work/application

RUN chown 1001 /work \
    && chmod "g+rwX" /work \
    && chown 1001:root /work

EXPOSE 8080
USER 1001

ENV quarkus_datasource_jdbc_url "jdbc:mysql://db:3306/tlc?allowPublicKeyRetrieval=true&useUnicode=true&characterEncoding=utf8&useSSL=false&useLegacyDatetimeCode=false&createDatabaseIfNotExist=true&serverTimezone=Europe/Paris"
ENV quarkus_datasource_username tlc
ENV quarkus_datasource_password tlc
ENV QUARKUS_HIBERNATE_ORM_DATABASE_GENERATION update
ENV doodle_internalPadUrl "http://etherpad:9001/"
ENV doodle_externalPadUrl "http://etherpad:9001/"
ENV mailer_host mail
ENV mailer_port 25
CMD ["./application", "-Dquarkus.http.host=0.0.0.0"]
