Dockerfile por Microservicio
Todos los microservicios comparten el mismo Dockerfile
, lo cual permite estandarizar el empaquetado y simplificar el proceso de construcción de imágenes. Este Dockerfile
toma como entrada el .jar
de cada servicio y genera una imagen Docker lista para ejecutarse.
Contenido del Dockerfile:
FROM openjdk:17
ARG JAR_FILE=target/*.jar
COPY ${JAR_FILE} app.jar
ENTRYPOINT ["java", "-jar", "app.jar"]
Explicación:
FROM openjdk:17
: usa una imagen oficial de Java 17 como base.ARG JAR_FILE=target/*.jar
: permite pasar el nombre del archivo.jar
como argumento.COPY ${JAR_FILE} app.jar
: copia el.jar
al contenedor y lo renombra comoapp.jar
.ENTRYPOINT
: define el comando que se ejecuta al iniciar el contenedor.
Este archivo debe estar ubicado en la raíz del directorio de cada microservicio. Luego, Docker Compose se encargará de empaquetar cada uno usando este mismo archivo, siempre que el .jar
correspondiente esté presente en target/
.
Last updated