Jugando con Docker

Logo Docker Descubrí y jugué con Docker hace ya bastante tiempo, pero ahora me ha dado otra vez y estoy en ello.

He hecho alguna pruebecilla con Docker y Multicast, con Docker y Postgres/Postgis … y ahora ando liado a ver cómo hacer imágenes Docker desde Maven.

Ya en su día hice una prueba y me funcionó bien, use el plugin de maven spotify / docker-maven-plugin y más o menos me gustó. En el pom.xml ponías a base de tags cómo construir la imagen y todo bien. Sin embargo, la documentación pone que ese plugin no se mantiene más y que se use en su lugar spotify / dockerfile-maven. Pues bien, he estado jugando un muy poco con él y lo que he visto no me ha gustado nada. En vez de poner cómo construir la imagen a base de tags en el pom.xml, te obliga a usar un Dockerfile. Nada malo hasta ahí. En los ejemplos de la documentación el fichero Dockerfile está en el raíz del proyecto maven y funciona bien. Estupendo. Pero a mí me gusta tener libertad y organizar las cosas a mi manera, así que pongo el Dockerfile en src/main/docker/Dockerfile. Y ahí empiezan mis problemas. Para meter dentro el jar (y sus dependencias), tengo que poner en el Dockerfile algo como

COPY ../../../target/mijar.jar /path/dentro/de/mi/imagen

Queda feo, pero podría vivir con ello. El problema es que cuando ejecutas el plugin, da un error de que el directorio target está fuera del contexto del Dockerfile. Obliga (no sé si el plugin o el Dockerfile, creo que el plugin) a que todos los ficheros que quieres copiar estén donde el Dockerfile o en subdirectorios por debajo. Eso me obliga a poner el Dockerfile en el raíz para poder coger cosas del subdirectorio target, como mi propio jar. Es su forma de funcionar, pero no me gusta. No he encontrado (tampoco me he matado buscando) una forma de solucionar esto. De momento voy a mirar el fabric8io / docker-maven-plugin, que de momento no he probado, pero solo ver el detalle de la documentación (sigue el link que aparece en esa página), ya me ha causado muy buena impresión.

Así que … ¡¡ ha probar se dicho !!

Esta entrada ha sido publicada en docker y etiquetada como . Guarda el enlace permanente.

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.