2012-03-20 27 views
11

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:

  1. 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 de tomcat6 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?

  2. 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 directorio WEB-INF/lib? ¿O cómo resolvería este problema?

  3. 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 usuario www-data?

+0

¿Cuál es la mejor manera de informar a los desarrolladores de Debian sobre esta cuestión aquí? – Witek

+0

tiene un paquete Deb para poner la guerra en tomcat. ¿Podrías compartir eso? Estamos tratando de hacer lo mismo. –

+0

¿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

Respuesta

1

Bueno ... Si usted tiene que crear paquetes de Debian que hay una gran jdeb biblioteca que funciona tanto para ant y maven. La mejor característica es que no requiere ningún contenedor dpkg, por lo que su compilación no dependerá del os.

Cuestiones relacionadas