Kunagi es una aplicación web Java simple para la cual ya estamos creando un paquete binario .deb
para nuestros usuarios. Este paquete depende de tomcat6
y simplemente coloca el archivo .war
en /var/lib/tomcat6/webapps
. Esto funciona muy bien en Debian y Ubuntu.¿Cómo crear un paquete Debian para mi aplicación web Java?
Ahora quiero crear un paquete fuente real que se pueda integrar a Debian. Tristemente no puedo encontrar ningún tutorial. Hay mucha información fraccionada sobre herramientas como CDBS, DH7 o javahelper y sus comandos. ¿Pero cuál debo usar?
que también tienen algunas cuestiones conceptuales:
Solemos, aplicaciones web están instalados copiando la aplicación web en el directorio
webapps
del contenedor web. ¿Sería entonces correcto hacer que mi paquete dependiera detomcat6
e instalar mi aplicación web directamente en/var/lib/tomcat6/webapps
? ¿O debería instalar mi aplicación web en otro lugar, proporcionar una configuración separada de Tomcat y ejecutarla con su propio usuario, como hacen otros servicios?Mi aplicación utiliza librerías (JAR) de otros proyectos. Por lo general, estos se colocan en el subdirectorio
WEB-INF/lib
del directorio webapp. Dado que no se permite incluir bibliotecas en un paquete en Debian, ¿sería correcto agregar estos proyectos como dependencias en mi paquete y crear enlaces simbólicos en mi directorioWEB-INF/lib
? ¿O cómo resolvería este problema?Mi webapp necesita para escribir archivos (datos de la aplicación). Como Tomcat se ejecuta como usuario
www-data
en Debian, el único directorio donde puede escribir mi aplicación web es/var/lib/tomcat6/webapps
. ¿Es el lugar correcto para poner mis datos? ¿O debería mi paquete crear algo como/var/lib/my-webapp-name/
y otorgar permisos de escritura para el usuariowww-data
?
¿Cuál es la mejor manera de informar a los desarrolladores de Debian sobre esta cuestión aquí? – Witek
tiene un paquete Deb para poner la guerra en tomcat. ¿Podrías compartir eso? Estamos tratando de hacer lo mismo. –
¿Realmente necesita ser un paquete .deb? Puede crear el acoplador acoplador (https://www.docker.com/) con tomcat y su aplicación web. Los contenedores funcionan como máquinas virtuales, bud docker te permite hacer cambios fácilmente y compartirlos. Su cliente solo necesita instalar Docker desde el repositorio de Debian y ejecutar un comando para descargar y ejecutar su contenedor. Puedo darte un ejemplo si esto se puede considerar como una solución. Su contenedor ya puede tener incorporado tomcat, solo puede modificar esta imagen de contenedor público (https://hub.docker.com/_/tomcat/). – Damian