diff --git a/Dockerfile.prod b/Dockerfile.prod index fafdffc..7f62762 100644 --- a/Dockerfile.prod +++ b/Dockerfile.prod @@ -15,10 +15,8 @@ RUN mvn dependency:go-offline -B # Copier le code source COPY src ./src -# Build de l'application avec profil production -RUN mvn clean package -DskipTests -B \ - -Dquarkus.package.type=uber-jar \ - -Dquarkus.profile=prod +# Build de l'application avec profil production (fast-jar par défaut) +RUN mvn clean package -DskipTests -B ## Stage 2 : Image de production optimisée et sécurisée FROM registry.access.redhat.com/ubi8/openjdk-17:1.18 @@ -28,7 +26,7 @@ ENV LANGUAGE='fr_FR:fr' # Variables d'environnement de production # Ces valeurs peuvent être surchargées via docker-compose ou Kubernetes ENV QUARKUS_PROFILE=prod -ENV QUARKUS_HTTP_PORT=8081 +ENV QUARKUS_HTTP_PORT=8080 ENV QUARKUS_HTTP_HOST=0.0.0.0 # Configuration Keycloak/OIDC (production) @@ -57,11 +55,11 @@ RUN mkdir -p /deployments /app/logs && \ # Passer à l'utilisateur non-root pour la sécurité USER 185 -# Copier l'application depuis le builder -COPY --from=builder --chown=185 /app/target/*-runner.jar /deployments/app.jar +# Copier l'application depuis le builder (format fast-jar Quarkus) +COPY --from=builder --chown=185 /app/target/quarkus-app/ /deployments/ # Exposer le port -EXPOSE 8081 +EXPOSE 8080 # Variables JVM optimisées pour production avec sécurité ENV JAVA_OPTS="-Xmx768m -Xms256m \ @@ -79,8 +77,8 @@ ENV JAVA_OPTS="-Xmx768m -Xms256m \ # Health check avec endpoints Quarkus HEALTHCHECK --interval=30s --timeout=10s --start-period=90s --retries=3 \ - CMD curl -f http://localhost:8081/q/health/ready || exit 1 + CMD curl -f http://localhost:8080/q/health/ready || exit 1 -# Point d'entrée avec profil production -ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar /deployments/app.jar"] +# Point d'entrée avec profil production (format fast-jar) +ENTRYPOINT ["sh", "-c", "exec java $JAVA_OPTS -jar /deployments/quarkus-run.jar"]