jar

crear el .jar (en la raíz, donde está gradlew tirar el comando):

./gradlew bootJar

eso crea un .jar en /build/libs/


dockerfile

crear un archivo Dockerfile (ubicado en la raíz del proyecto) (para crear una imagen docker de un .jar)

contenido:

# Usamos una imagen de Java ligera
FROM eclipse-temurin:21-jdk-alpine

# Directorio de trabajo dentro del contenedor
WORKDIR /app

# Copiamos el jar generado (asegúrate de que el nombre coincida)
COPY ./build/libs/*.jar app.jar

# Exponemos el puerto de Spring Boot
EXPOSE 19999

# Comando para arrancar la app
ENTRYPOINT ["java", "-jar", "app.jar"]

hay quue indicarle donde está el .jar (setearle el de la salida de gradle)

comando para crear la imagen:

docker build -t image-name .

ver si se creó:

docker images

docker container

una vez creada la imagen a partir del .jar podemos crear un contenedor de docker

correr en primer plano:

docker run image-name

en segundo plano:

docker run -d -p xxxx:yyyy --name CONTAINER_NAME image-name


request a api con curl:

curl -X POST localhost:xxxx/endpoint  -H "Content-Type: application/json"   -d '{"a":"b"}'

-d ‘{“a”:”b”}’

es para enviar un json

ver los contenedores ejecutandose:

docker ps