Cómo instalar Tomcat 10 en Debian 10 Buster

En esta entrada vamos a ver cómo instalar Tomcat 10 en Debian 10 Buster paso a paso, de forma que podrás desplegar aplicaciones de servidor basadas en la plataforma Jakarta EE 9 sobre tu máquina o VPS Debian.

Antes de instalar Tomcat 10 en Debian 10 Buster

Para poder seguir los pasos de esta guía de instalación de Tomcat 10 en Debian 10 Buster es importante partir de los siguientes requerimientos mínimos:

  • Un sistema Debian 10 Buster actualizado.
  • Entorno de ejecución de Java (JRE), versión 8 ó superior.
  • Un usuario con privilegios de sudo.
  • Acceso a Internet.

Si todavía no dispones del entorno mínimo necesario, es posible que te resulte útil consultar antes nuestra guía de instalación de Java en Debian 10 Buster.

También necesitaremos algunas herramientas del sistema que obtendremos de los repositorios de Debian 10, para lo que actualizamos las listas de paquetes:

~$ sudo apt update

E instalamos los paquetes necesarios:

~$ sudo apt install -y ca-certificates tar wget

Cómo descargar Tomcat 10 en Debian 10 Buster

Vamos a descargar Tomcat 10 para Debian 10 desde la página de descargas del sitio oficial, ya que los repositorios del sistema no ofrecen paquetes para esta versión:

como descargar tomcat 10 para debian 10 buster

Encontraremos paquetes en los formatos .zip y .tar.gz, siendo más interesante este último. Podemos realizar la descarga directamente desde el navegador o, si trabajamos remotamente, desde consola con la herramienta wget:

~$ wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.5/bin/apache-tomcat-10.0.5.tar.gz

Cómo instalar Tomcat 10 en Debian 10 Buster

Para instalar Tomcat 10 en Debian 10 tendremos que realizar una serie de tareas que nos permitan tratar esta plataforma como un servicio más del sistema.

Empezaremos creando el usuario y grupo con el que Tomcat 10 correrá como servicio:

~$ sudo useradd -U -m -d /opt/tomcat -s /bin/false tomcat

Descomprimimos el paquete que acabamos de descargar en la ruta que hemos establecido como directorio personal del usuario tomcat:

~$ sudo -u tomcat tar xf apache-tomcat-10.0.5.tar.gz -C /opt/tomcat/

Como el subdirectorio que se acaba de crear contiene números de versión en su nombre, podemos renombrarlo o crear un enlace simbólico sin números de versión, para facilitar la instalación y mantenimiento:

~$ sudo ln -s /opt/tomcat/apache-tomcat-10.0.5/ /opt/tomcat/apache-tomcat

Crearemos el archivo de unidad para Systemd:

~$ sudo nano /etc/systemd/system/tomcat10.service

Con el contenido siguiente:

[Unit]
Description=Tomcat 10.0 servlet container
After=network.target

[Service]
Type=forking
User=tomcat
Group=tomcat
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
Environment="CATALINA_BASE=/opt/tomcat/apache-tomcat"
Environment="CATALINA_HOME=/opt/tomcat/apache-tomcat"
Environment="CATALINA_PID=/opt/tomcat/apache-tomcat/temp/tomcat.pid"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
ExecStart=/opt/tomcat/apache-tomcat/bin/startup.sh
ExecStop=/opt/tomcat/apache-tomcat/bin/shutdown.sh

[Install]
WantedBy=multi-user.target

Una vez guardado el archivo, Tomcat 10 puede ser tratado ya como servicio.

Iniciamos el servicio con el comando systemctl:

~$ sudo systemctl start tomcat10

Podemos comprobar en cualquier momento el estado del servicio con el comando systemctl status tomcat10:

como instalar tomcat 10 en debian 10 buster

Si necesitamos que Tomcat 10 inicie automáticamente en cada arranque de Debian 10, debemos habilitar el servicio:

~$ sudo systemctl enable tomcat10

Firewall

En caso de tener activado el firewall UFW en el sistema, para poder acceder desde red al servicio Tomcat 10 habrá que añadir una regla para el puerto 8080/TCP:

~$ sudo ufw allow 8080/tcp

Acceso

Para acceder a Tomcat 10 desde un navegador indicaremos la dirección de la máquina Debian 10 (IP, nombre DNS, dominio, etc.) indicando el puerto de conexión 8080.

Por ejemplo, la máquina Debian 10 sobre la que hemos preparado este tutorial es accesible en el subdominio debian10.local.lan, de modo que podremos acceder utilizando http://debian10.local.lan:8080 como URL:

instalar tomcat 10 en debian 10 buster

Se mostrará la página principal de la plataforma, donde encontraremos enlaces a las aplicaciones administrativas y a la documentación local (que es también una aplicación, la aplicación /docs).

instalacion de tomcat 10 en debian 10 buster

En cuanto a las aplicaciones administrativas, sólo son accesibles localmente, para acceder desde red tendremos que realizar algunos ajustes.

Cómo configurar Tomcat 10 en Debian 10 Buster

Acceso desde red a las aplicaciones administrativas

Las aplicaciones administrativas, /manager y /host-manager, tienen restringido el acceso permitiendo únicamente conexiones locales. Para permitir acceso desde red, útil si trabajamos remotamente, editaremos el archivo context.xml de cada una de ellas.

En el caso de la aplicación /manager:

~$ sudo nano /opt/tomcat/apache-tomcat/webapps/manager/META-INF/context.xml

Buscaremos la directiva Valve dentro del bloque Context principal:

...
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
...

Y la encerraremos en un bloque de comentarios XML:

...
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
...

Ya podemos guardar los cambios.

En el caso de la aplicación /host-manager haremos lo propio con su archivo context.xml:

~$ sudo nano /opt/tomcat/apache-tomcat/webapps/host-manager/META-INF/context.xml

Cómo crear usuarios de Tomcat 10 en Debian 10

Algunas aplicaciones requieren autenticación básica de usuario, mediante usuarios definidos con ciertos roles. Es el caso de las aplicaciones administrativas, que exigirán el acceso con un usuario que tenga los roles admin-gui y manager-gui.

Para crear usuarios en Tomcat 10 editaremos el archivo tomcat-users.xml:

~$ sudo nano /opt/tomcat/apache-tomcat/conf/tomcat-users.xml

Antes de la etiqueta de cierre del bloque tomcat-users añadiremos una directiva user similar a esta:

...
        <user username="chacho" password="XXXXXXXX" roles="admin-gui,manager-gui"/>
</tomcat-users>

Obviamente puedes utilizar el nombre de usuario que quieras con su propia contraseña.

Guardados los cambios, los usuarios quedarán disponibles.

Acceso a las aplicaciones administrativas

Una vez realizadas las configuraciones anteriores será posible acceder a las aplicaciones administrativas de Tomcat 10 en Debian 10 Buster, directamente o desde la página principal de la plataforma. La primera vez que accedamos se nos solicitará las credenciales de usuario.

Por ejemplo, para acceder a la aplicación «Server Status» (/manager/status):

Accedemos con el usuario y contraseña que definimos anteriormente y se mostrará la página de la aplicación.

Si a continuación accedemos al gestor de aplicaciones o «Manager App» (/manager/hml) no necesitaremos autenticar el acceso, ya que esta aplicación y la anterior en realidad forman parte de la misma (/manager).

tomcat 10 para debian 10 buster

Pero si accedemos a la aplicación «Host Manager» (/host-manager/html) sí habrá que introducir usuario y contraseña, tras lo que se permitirá también el acceso.

tomcat 10 sobre debian 10 buster

Cómo desplegar aplicaciones en Tomcat 10 desde archivos WAR

Si disponemos de alguna aplicación en formato WAR (archivos con extensión .war) lista para desplegar, accederemos al gestor de aplicaciones o «Manager App«. Buscaremos la sección «Desplegar«, dentro de esta «Archivo WAR a desplegar» y, mediante «Seleccionar archivo«, localizaremos el archivo .war.

desplegar aplicaciones war en tomcat 10 para debian 10 buster

Con el archivo .war seleccionado, usaremos «Desplegar«, de modo que ser cargará dicho archivo en la plataforma y en unos instantes se recargará el gestor de aplicaciones.

Si todo ha ido bien, en la sección «Mensaje» aparecerá el texto «OK» y en la lista de aplicaciones aparecerá la sección correspondiente a la nueva aplicación, con los controles correspondientes para gestionarla:

Podemos lanzar la aplicación desde el enlace correspondiente que aparece en la columna «Ruta«:

¡Así de sencillo!

Conclusión

Ahora que sabes cómo instalar Tomcat 10 en tu sistema Debian 10 Buster ya puedes desplegar aplicaciones basadas en Java, tanto de terceros como tus propios desarrollos, de manera sencilla y rápida.

Y si esta guía rápida te ha servido para instalar tu propia platafoma Tomcat 10 y quieres agradecérnoslo, puedes invitarnos a un café:

 

O puedes dejar una propina para una CocaCola desde PayPal:

¡Gracias!

 

Deja un comentario

Este sitio web utiliza cookies para que usted tenga la mejor experiencia de usuario. Si continúa navegando está dando su consentimiento para la aceptación de las mencionadas cookies y la aceptación de nuestra política de cookies, pinche el enlace para mayor información

ACEPTAR
Aviso de cookies