From 87efbbb7c9a587ad24eec3d79bbf4e9c789adf19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Isidoro=20Nevares=20Mart=C3=ADn?= Date: Thu, 19 Mar 2026 11:14:42 +0100 Subject: [PATCH] incluye Dockerfile --- Dockerfile | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) create mode 100644 Dockerfile diff --git a/Dockerfile b/Dockerfile new file mode 100644 index 0000000..9e93313 --- /dev/null +++ b/Dockerfile @@ -0,0 +1,28 @@ +# ====== Etapa 1: Fase de construcción (es temporal)====== +# Usamos una imagen de Maven con JDK 23 para construir la aplicación +FROM maven:3.9-eclipse-temurin-23 AS imagen_construccion + +# +WORKDIR /app +COPY pom.xml . + +COPY src ./src +RUN mvn clean package + +# ====== Etapa 2: Fase de ejecución (con la que generará la imagen) ====== +# Sólo necesitamos el JDK para ejecutar la aplicación, no el entorno de construcción completo +FROM eclipse-temurin:23-jdk as imagen_ejecucion + +WORKDIR /app + +# Copia el jar generado: lo que se obtendría (aaee_mapamundi-0.0.1.jar según el pom.xml) se copia como app.jar +# LA idea es simplificar el comando de arranque +COPY --from=builder /app/target/*.jar app.jar + +# Puerto típico de Spring Boot (se podría cambiar si la aplicación usa otro) +EXPOSE 8080 + +# Comando de arranque +# En las actividades anteriores se ejectuaba el comando "java -jar target/aaee_mapamundi-0.0.1.jar" (info en el pom.xml) para iniciar la aplicación +# Aquí se hace lo mismo pero apuntando al jar copiado en esta etapa +ENTRYPOINT ["java", "-jar", "app.jar"] \ No newline at end of file