Usando wildfly con overlayfs

2023/02/23

Estos días estoy teniendo que probar varias aplicaciones JEE en los servidores de aplicaciones java wildfly y payara.

No solo estoy teniendo que probar aplicaciones, sinó también cerciorarme de que la customización realizada a los application servers (as) vanilla sean correctas.

Para facilitarme lo anterior, encontré que una forma relativamente sencilla de realizar pruebas y ver que cambios se realizan en un as es utilizar overlayfs (manpage) para dejar incambiados los archivos del as (directorio lowerdir) y poder inspeccionar fácilmente los cambios realizados (directorio upperdir).

Si bien el comando central es, para el caso de wildfly-26.1.3.Final:

$ doas mount -t overlay overlay \
    -o lowerdir=wildfly-26.1.3.Final_base,upperdir=wildfly-26.1.3.Final_upper,workdir=wildfly-26.1.3.Final_work \
    wildfly-26.1.3.Final

hay que estar asegurandose que existan los directorios, que no esté ya montado, y en mi caso para versiones distintas del as.

De ahí el script mount-application-server.sh que debe ser renombrado con el nombre del archivo comprimido del as. Para el caso anterior:

$ ln mount-application-server.sh mount-wildfly-26.1.3.Final.tar.gz.sh

El script se encarga de extraer del nombre de archivo del script el as (de ahí el uso de ln), la versión y la extensión utilizada.

A partir de allí:

Por ahora solo funciona para wildfly y payara.