Jar como servicio en Linux

¿Te has preguntado alguna vez cómo convertir tu aplicación Java empaquetada en un archivo JAR como servicio en Linux? Con Systemd, el administrador de servicios de Linux, puedes lograrlo de manera sencilla y eficiente. En este post, te guiaré paso a paso a través del proceso de dejar un aplicativo JAR como servicio utilizando Systemd, lo que te permitirá gestionar fácilmente su inicio, detención y supervisión.

En Linux, podemos ejecutar java jar usando el comando java -jar application.jar. Pero para ejecutar Jar como servicio en linux, necesitamos hacer algo más.

Requisitos

Asegúrate de tener tu aplicación Java empaquetada en un archivo JAR. Si aún no lo has hecho, puedes utilizar herramientas como Maven o Gradle para compilar tu proyecto y generar el archivo JAR ejecutable. Teniendo el archivo lo ubicamos en el directorio /home/ubuntu/, usaremos un usuario que haya iniciado sesión (ubuntu) para ejecutar la aplicación con systemd. También puede crear un usuario del sistema para el mismo propósito.

Paso 1: Creación del Archivo de Servicio

Ahora, crearemos un archivo de servicio para definir las configuraciones del servicio en Systemd. Puedes ubicar este archivo en /etc/systemd/system/.

Paso 2: Configuración del Archivo de Servicio

Abrimos el archivo y copiamos los siguiente, en donde debes enrutar la app y generar el comando para levantar el archivo jar, ejemplo:

Asegúrate de reemplazar Description, User, WorkingDirectory y ExecStart con los valores correspondientes.

Paso 4: Habilitación y Arranque del Servicio

Una vez configurado el archivo de servicio, habilita y arranca el servicio con los siguientes comandos:

¡Y eso es todo! Tu aplicativo JAR ahora está configurado como un servicio en tu sistema Linux, listo para iniciar automáticamente y ejecutarse en segundo plano según sea necesario.

Conclusión

Con Systemd, dejar un aplicativo Jar como servicio en Linux es una tarea simple y poderosa. Al seguir estos sencillos pasos, puedes asegurar que tu aplicación esté siempre disponible y funcione de manera confiable en tu entorno de producción. ¡Explora y experimenta con Systemd para optimizar la administración de tus aplicativos en Linux!

Revisa nuestros post sobre java https://tenocode.com/category/programacion/java/

Entradas relacionadas

Desplegar una aplicación en directorio raíz de tomcat y redireccionarla al puerto 80

Cuando desarrollas un aplicativo .war y lo deployas en un servidor tomcat, generalmente la ruta en donde se alojará la aplicación será localhost:8080/tuapp, lo que haremos es…

Conectar Java con Mysql

Hay muchas formas en que podemos conectar Java con Mysql y en este tutorial exploraremos algunas opciones para ver cómo lograrlo. Comenzaremos analizando posiblemente las opciones más…

Consumir mensaje RabbitMQ con Java 17

En el complejo universo de la mensajería y la integración de sistemas, RabbitMQ destaca como una herramienta robusta que facilita la comunicación eficiente entre aplicaciones distribuidas. Este…