Cómo instalar Tomcat 10 en Fedora 34, 33 y 32

En esta entrada veremos cómo instalar Tomcat 10 en Fedora 34, 33 y 32 paso a paso, de modo que podamos trabajar con la nueva versión de esta plataforma para servir aplicaciones Java basadas en el estándar Yakarta EE 9 desde tu servidor o VPS Fedora.

Antes de instalar Tomcat 10 en Fedora 34, 33 y 32

Para poder seguir los pasos de esta guía de instalación de Tomcat 10 en Fedora 34, 33 y 32 es importante cumplir los siguientes requisitos:

  • Una máquina Fedora 34, 33 y 32 actualizada.
  • Entorno de ejecución de Java, o JRE.
  • Un usuario con permisos de sudo.
  • Acceso a Internet.

Si no dispones aún del entorno necesario, puede ser de utilidad consultar previamente nuestra guía de instalación de Java en Fedora 33 y 32.

También necesitaremos algunas herramientas del sistema que podemos obtener desde los repositorios de Fedora, así que actualizamos la información de los mismos:

~$ sudo yum update

E instalamos las herramientas necesarias:

~$ sudo yum install -y tar wget

Cómo descargar Tomcat 10 para Fedora 34, 33 y 32

Vamos a descargar Tomcat 10 para Fedora 34, 33 y 32 desde el sitio web del proyecto, donde podremos encontrar la última versión estable:

como descargar tomcat 10 en fedora 34, 33 y 32

Encontraremos el paquete para descargar en varios formatos, siendo el .tar.gz el que nos interesa en esta ocasión. Podemos realizar la descarga directamente desde el navegador o, si trabajamos remotamente, desde consola con el comando wget:

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

Cómo instalar Tomcat 10 en Fedora 34, 33 y 32

Para instalar Tomcat 10 en Fedora 34, 33 y 32 tendremos que realizar una serie de tareas que detallamos a continuación.

Empezaremos creando el usuario con el que correrá el servicio:

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

Descomprimimos el paquete que acabamos de descargar directamente en la ubicación definitiva de la plataforma:

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

Como el nombre del subdirectorio que se crea contiene números de versión, lo renombramos para facilitar la instalación y mantenimiento:

~$ sudo mv /opt/tomcat/apache-tomcat-10.0.7 /opt/tomcat/apache-tomcat

Y cambiamos la propiedad de los archivos de Tomcat 10 concediéndosela al usuariode Fedora 34, 33 y 32 que hemos creado antes:

~$ sudo chown -R tomcat10: /opt/tomcat/apache-tomcat/

Configuración del servicio

Para hacer funcionar Tomcat 10 como un servicio de Fedora 34, 33 y 32 tendremos que crear un archivo de configuración para Systemd:

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

El contenido puede ser similar al siguiente:

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

[Service]
Type=forking
User=tomcat10
Group=tomcat10
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, todo está listo para iniciar por vez primera el servicio:

~$ sudo systemctl start tomcat10

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

como instalar tomcat 10 en fedora 34, 33 y 32

Para que Tomcat 10 pueda iniciar en cada arranque de Fedora 34, 33 y 32 lo habilitamos también con el comando systemctl:

~$ sudo systemctl enable tomcat10

Firewall

Con el fin de poder acceder a la plataforma desde red es necesario abrir los puertos correspondientes en el firewall.

Para conexiones sobre protocolo HTTP hay que habilitar el puerto 8080:

~$ sudo firewall-cmd --permanent --add-port=8080/tcp

Si vamoss a utilizar conexiones seguras SSL también habrá que habilitar también el puerto 8443:

~$ sudo firewall-cmd --permanent --add-port=8443/tcp

Aplicamos los cambios recargando la configuración del firewall:

~$ sudo firewall-cmd --reload

Acceder

Para acceder a Tomcat 10 en Fedora 34, 33 y 32 desde un navegador indicaremos la dirección del servidor (IP, nombre DNS, dominio, etc.) y el puerto de conexión.

Por ejemplo, la máquina Fedora 34 sobre la que hemos realizado este tutorial es accesible en el subdominio fedora.local.lan, y trabajaremos con conexiones HTTP estándar sobre el puerto 8080, por lo que empleamos http:/fedora.local.lan:8080/ como URL:

instalar tomcat 10 en fedora 34, 33 y 32

Se mostrará la aplicación principal de la plataforma dentro de la que encontraremos enlaces al resto de aplicaciones incluidas como, por ejemplo, la aplicación de documentación local (aplicación docs):

instalacion de tomcat 10 en fedora 34, 33 y 32

Este es un ejemplo de aplicación a la que se puede acceder fácilmente, sin restricción de acceso por origen ni necesidad de autenticación de usuarios, pero no todas las aplicaciones incluidas funcional igual.

Cómo configurar Tomcat 10 en Fedora 34, 33 y 32

Para configurar Tomcat 10 en Fedora 34, 33 y 32 tendremos que trabajar sobre diversos archivos de cofiguración, tanto específicos de la plataforma como de las aplicaciones respectivas.

Aplicaciones administrativas

Por defecto las aplicaciones administrativas incluidadas en el paquete de Tomcat 10 sólo son accesibles localmente, así que si trabajamos remotamente y queremos acceder desde red habrá que realizar algún ajuste en sus correspondientes archivos context.xml. Por ejemplo, para la aplicación manager:

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

Buscamos la directiva Valve:

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

Y la desactivamos encerrándola dentro de 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" />
-->
...

Guardando los cambios la nueva configuración queda aplicada inmediatamente.

Este ajuste también habría que realizarlo para la aplicación host-manager, editando su propio archivo context.xml:

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

Usuarios de Tomcat 10

Algunas aplicaciones exigen autenticación de usuarios que tengan asignados ciertos roles. Para crear usuarios de Tomcat 10 en Fedora 34, 33 y 32 editaremos el archivo tomcat-users.xml de la plataforma:

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

Y añadimos una directiva user dentro del bloque tomcat-users:

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

En esta directiva indicamos el nombre del usuario (es recomendable que sea distinto de admin), su contraseña y al menos los roles admin-gui y manager-gui.

Hecho esto ya podemos acceder a cualquiera de las aplicaciones administrativas, por ejemplo «Server Status» o Estado de Servidor (aplicación manager/status):

instalando tomcat 10 en fedora 34, 33 y 32

Tendremos que introducir las credenciales del usuario que creamos anteriormente, tras lo cual se mostrará la página de la aplicación:

tomcat 10 en fedora 34, 33 y 32

Si a continuación accedemos a la aplicación «Manager App» o Gestor de Aplicaciones Web de Tomcat (aplicación manager/html):

tomcat 10 para fedora 34, 33 y 32

Pero si después accedemos a la aplicación «Host Manager» (host-manager) o Gestor de Máquina Virtual de Tomcat 10, habrá que volver a realizar la autenticación de usuario, ya que esta es una aplicación distinta de las anteriores. Hecho esto, esta aplicación también se mostrará:

tomcat 10 sobre fedora 34, 33 y 32

Cómo instalar aplicaciones Java en Tomcat 10 para Fedora 34, 33 y 32

Si disponemos de una aplicación de servidor empaquetada en un archivo con formato WAR (extensión .war) y queremos desplegarla en Tomcat 10 abriremos el Gestor de Aplicaciones Web y en la sección «Desplegar / Archivo WAR a desplegar» seleccionaremos el archivo mediante el control integrado:

desplegar aplicaciones en tomcat 10 para fedora 34, 33 y 32

Una vez seleccionado el archivo lo subiremos a la plataforma utilizando el botón «Desplegar«.

El gestor de aplicaciones volverá a cargar de nuevo y, si todo ha ido bien, mostrará «OK» en la sección «Mensaje» y la aplicación aparecerá junto al resto en la lista:

Para comprobar que la aplicación funciona bastará con utilizar el correspondiente enlace que se muestra en la columna «Ruta«:

¡Así de sencillo!

Conclusión

Ahora que sabes cómo instalar Tomcat 10 en Fedora 34, 33 y 32 ya puedes desplegar esta plataforma para servir aplicaciones basadas en Yakarta EE 9 desde tu servidor o VPS, tanto si se trata de tus propios desarrollos o de aplicaciones de terceros.

¡Apoya comoinstalar.me!

¿Ya funciona la plataforma en tu máquina? Si es así y quieres agradecérnoslo, puedes hacerlo invintándonos a un café:

 

O también puedes dejar una propina de 1 $ desde PayPal:

¡Gracias!

Valora esta entrada

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.

ACEPTAR
Aviso de cookies