Primero se debe ver la IP de WLS con el comando ipconfig
En el archivo persistance.xml cambiar localhost por la IP del WSL
En File > Project Structure > Artifacts > Dar al símbolo + > seleccionar JAR y elegir la opción from modules with dependencies
En el apartado Main Class dar al ícono de la carpeta y seleccionar la clase Main
Las demás opciones dejarlas como están > OK
Marcar la opción Include in project build > Apply y Ok
En la clase Main agregué código para hacer una consulta, va a marcar errores, que se solucionan agregando las clases que indique Intellij
Collection emps = entityManager.createQuery("SELECT e FROM MissionComanders e").getResultList();
for (Iterator i = emps.iterator(); i.hasNext();) {
MissionComanders e = (MissionComanders) i.next();
System.out.println("MC " + e.getIdMc() + ", " + e.getNameMc());
}
Importando las clases
Ahora toca construir el proyecto que al hacerlo se generará la carpeta out que contendrá un archivo jar
A partir de ahí podremos crear el archivo Dockerfile para la imagen, pero primero hay que probar el Main que funcione
Bien! Funciona el Main. Ahora si a generar el archivo Dockerfile
Desde CMD ubicarse en la carpeta donde está el Dockerfile y crear la imagen
Comprobamos que se haya creado la imagen
Corremos la imagen docker run NombredeImagenoIDdeImagen
Fuentes:
https://dzone.com/articles/run-simple-jar-application-in-docker-container-1