-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathDockerfile
More file actions
77 lines (51 loc) · 1.87 KB
/
Dockerfile
File metadata and controls
77 lines (51 loc) · 1.87 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
FROM eclipse-temurin:21-jdk as build
COPY . /app
WORKDIR /app
RUN chmod +x mvnw
RUN ./mvnw package -DskipTests
RUN mv -f target/*.jar app.jar
FROM eclipse-temurin:21-jre
ARG PORT
ENV PORT=8000
# Expone el puerto en el corre tu app
EXPOSE 8000
COPY --from=build /app/app.jar .
RUN useradd runtime
USER runtime
ENTRYPOINT [ "java", "-Dserver.port=${PORT}", "-jar", "app.jar" ]
####
# # Imagen base de Java para correr la aplicación
# FROM openjdk:21-jdk-slim
# # Configurar el directorio de trabajo dentro del contenedor
# WORKDIR /app
# # Copiar el archivo JAR generado por Spring Boot al contenedor
# COPY target/apirest-0.0.1-SNAPSHOT.jar app.jar
# # Exponer el puerto que utiliza tu aplicación (por defecto, 8080 en Spring Boot)
# EXPOSE 8000
# # Comando para ejecutar la aplicación
# ENTRYPOINT ["java", "-jar", "app.jar"]
# # Imagen base de Maven para construir la aplicación
# FROM maven:3.9.4-eclipse-temurin-17 AS build
# # Configurar el directorio de trabajo dentro del contenedor
# WORKDIR /app
# # Copiar el archivo pom.xml y las dependencias para resolverlas primero
# COPY pom.xml .
# # Descargar las dependencias de Maven (se almacenan en caché si no hay cambios en el pom.xml)
# RUN mvn dependency:go-offline -B
# # Copiar el resto del código fuente
# COPY src ./src
# # Construir el archivo JAR
# RUN mvn clean package -DskipTests
# # ----------------------------
# # Imagen final para ejecutar la aplicación
# # ----------------------------
# # Usar una imagen base más ligera para ejecutar el JAR
# FROM openjdk:21-jdk-slim
# # Configurar el directorio de trabajo dentro del contenedor
# WORKDIR /app
# # Copiar el archivo JAR generado al contenedor final
# COPY --from=build /app/target/apirest-0.0.1-SNAPSHOT.jar app.jar
# # Exponer el puerto que utiliza tu aplicación
# EXPOSE 8000
# # Comando para ejecutar la aplicación
# ENTRYPOINT ["java", "-jar", "app.jar"]