En esta entrada vamos a ver cómo instalar Tomcat 9 en openSUSE Leap 15.2, 15.3 y 15.4 paso a paso, de modo que puedas desplegar servlets o aplicaciones de servidor realizadas en Java desde tu servidor o VPS openSUSE.
Contenido
- Antes de instalar Tomcat 9 en openSUSE Leap 15
- Cómo descargar Tomcat 9 para openSUSE Leap 15
- Cómo instalar Tomcat 9 en openSUSE Leap 15
- Cómo acceder a Tomcat 9 en openSUSE Leap 15
- Usuarios de Tomcat 9 en openSUSE Leap 15
- Accediendo a las aplicaciones
- Documentación de Tomcat 9 en openSUSE Leap 15
- Cómo desplegar aplicaciones en Tomcat 9
- Conclusión
Antes de instalar Tomcat 9 en openSUSE Leap 15
Si quieres poder completar esta guía de instalación de Tomcat 9 en openSUSE Leap 15 debes partir de los sguientes requisitos mínimos:
- Una instalación actualizada de openSUSE Leap 15.2, 15.3 ó 15.4.
- Entorno de Java JRE.
- Acceso a terminal de comandos con root o un usuario con privilegios de sudo.
- Conexión a Internet.
Si aún no dispones del entorno necesario, podría interesarte consultar previamente nuestra guía de instalación de Java en openSUSE Leap 15.
Cómo descargar Tomcat 9 para openSUSE Leap 15
Vamos a descargar Tomcat 9 para openSUSE Leap 15 desde la página web del proyecto, donde encontraremos la última versión disponible en la sección de descargas:
Encontraremos enlaces de descarga con distintos formatos de compresión y para distintos sistemas. En este tutorial descargaremos el paquete en formato .tar.gz directamente desde consola, por lo que copiaremos el enlace para usarlo con el comando wget:
~> wget https://downloads.apache.org/tomcat/tomcat-9/v9.0.64/bin/apache-tomcat-9.0.64.tar.gz
Cómo instalar Tomcat 9 en openSUSE Leap 15
Vamos a instalar Tomcat 9 en openSUSE Leap 15 desde el paquete que acabamos de descargar, pero antes de descomprimirlo crearemos un usuario con el que correrá el servicio:
~> sudo useradd -mU -k /dev/null -d /opt/tomcat -s /bin/false tomcat
Ahora podemos descomprimir el paquete de Tomcat 9 en /opt/tomcat directamente:
~> sudo tar xf apache-tomcat-9.0.64.tar.gz -C /opt/tomcat/
Los archivos de Tomcat 9 se instalan en un nuevo subdirectorio cuya propiedad debemos conceder al usuario tomcat:
~> sudo chown -R tomcat:tomcat /opt/tomcat/apache-tomcat-9.0.64/
Habrás observado que este subdirectorio contiene números de versión en su nombre, por lo que sería buena idea crear un enlace simbólico sin números para facilitar las tareas de configuración y mantenimiento:
~> sudo ln -s /opt/tomcat/apache-tomcat-9.0.64/ /opt/tomcat/apache-tomcat
Como la idea es manejar Tomcat 9 como un servicio más de openSUSE Leap 15, es necesario crear un archivo de configuración para manejar este nuevo servicio:
~> sudo nano /etc/systemd/system/tomcat.service
Con el siguiente contenido:
[Unit] Description=Apache Tomcat 9.0 Web Application Container for openSUSE Leap 15 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
Observa que usuario, grupo y rutas de Tomcat 9 de esta configuración deben coincidir con lo que hemos creado en pasos anteriores. Guardamos los cambios y cerramos el archivo.
Ya podemos iniciar el nuevo servicio:
~> sudo systemctl start tomcat
Y podremos comprobar el estado de servicio, ahora y en cualquier momento, mediante el comando systemctl status tomcat
:
Si queremos que el servicio inicie automáticamente con cada arranque del sistema operativo, debemos habilitarlo igualmente con systemctl:
~> sudo systemctl enable tomcat
Cómo configurar el firewall
Por defecto el firewall de openSUSE Leap 15 suele estar activado, así que si queremos poder acceder al servicio Tomcat 9 desde la red, deberíamos añadir una excepción:
~> sudo firewall-cmd --permanent --add-port=8080/tcp
Si tenemos intención de usar conexiones seguras habría que añadir la regla correspondiente:
~> sudo firewall-cmd --permanent --add-port=8443/tcp
Aplicamos los cambios recargando la configuración del firewall:
~> sudo firewall-cmd --reload
Cómo acceder a Tomcat 9 en openSUSE Leap 15
Para acceder a Tomcat 9 en openSUSE Leap 15 usaremos un navegador y especificaremos la dirección IP o dominio del servidor añadiendo el puerto 8080 como URL.
Por ejemplo, en este tutorial trabajamos sobre una máquina accesible en el dominio opensuse15.local.lan, así que usaríamos http://opensuse15.local.lan:8080/ como URL:
Veremos muchos enlaces que nos llevan a recursos de la documentación integrada de Tomcat 9, pero los más importantes son los botones «Server Status«, «Manager App» y «Host Manager«. Si accedemos desde red, ninguno de los enlaces de las herramientas administrativas funcionará, ya que las configuraciones de cada una de estas aplicaciones sólo permiten el acceso localmente.
Para cambiar esto, editaremos los archivos de configuración context.xml de cada aplicación.
Para la aplicación Manager:
~> sudo nano /opt/tomcat/apache-tomcat/webapps/manager/META-INF/context.xml
Veremos un bloque Context dentro del que la directiva Valve configura el acceso local:
... <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> ...
Encerraremos esta directiva entre comentarios XML:
... <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --> ...
Guardamos los cambios y cerramos el archivo.
Podemos hacer lo mismo para la aplicación Host Manager:
~> sudo nano /opt/tomcat/apache-tomcat/webapps/host-manager/META-INF/context.xml
El procedimiento sería el mismo.
Ahora ya podremos acceder a estas aplicaciones de administración desde cualquier punto de la red, aunque veremos que necesitamos iniciar sesión con usuario y contraseña:
Las aplicaciones Manager y Host-Manager necesitan la existencia de usuarios con ciertos roles para pode acceder; veremos enseguida cómo crear estos usuarios.
Usuarios de Tomcat 9 en openSUSE Leap 15
El archivo en el que se administran los usuarios de la plataforma en openSUSE Leap 15 es tomcat-users.xml, que editaremos a continuación:
~> sudo nano /opt/tomcat/apache-tomcat/conf/tomcat-users.xml
Añadimos un usuario dentro del bloque tomcat-users:
... <user name="instalador" password="XXXXXXXX" roles="admin-gui,manager-gui" /> </tomcat-users>
Guardamos los cambios y cerramos el archivo.
Ya podemos acceder a las aplicaciones que requieren usuarios con los roles especificados.
Accediendo a las aplicaciones
Desde la página de inicio de Tomcat 9 podremos acceder a la aplicación «Server Status» (estado del servidor):
O a la aplicación «Manager App» (gestor de aplicaciones web):
Veremos que entre las aplicaciones instaladas por defecto, además de manager y host-manager, tenemos la aplicación de documentación de Tomcat 9 y la aplicación de ejemplos.
Otra aplicación accesible desde el inicio de Tomcat 9 es «Host Manager» (gestor de máquinas virtuales):
Documentación de Tomcat 9 en openSUSE Leap 15
Ya vimos que en la página principal de Tomcat 9 existen varios enlaces a secciones relevantes de la aplicación de documentación local. Si quieres examinar esta documentación, desde el gestor de aplicaciones encontrarás acceso a la aplicación docs, donde encontrarás la documentación muy bien estructurada:
Cómo desplegar aplicaciones en Tomcat 9
Si dispones de una aplicación Java en formato .war lista para ser desplegada, accede a la aplicación «Manager App» (/manager/) directamente o desde la página inicial de Tomcat 9, y desplázate a la sección «Desplegar / Archivo WAR a desplegar«:
Con el botón «Seleccionar archivo» localiza el archivo .war correspondiente a la aplicación que quieres instalar y a continuación pulsa el botón «Desplegar«. La página volverá a cargar y se mostrará un mensaje con el resultado de la operación. Si todo ha ido bien la aplicación aparecerá en la lista de aplicaciones disponibles, con sus correspondientes herramientas de gestión:
Bastará con seguir el enlace del nombre de la aplicación para que se muestre en el navegador.
Conclusión
Ahora que sabes cómo instalar y configurar Tomcat 9 en openSUSE Leap 15 ya puedes desplegar servlets y aplicaciones Java en tu servidor o VPS, o trabajar en tus propios desarrollos.
En caso de dudas, preguntas, sugerencias, propuestas de mejora, etc. puedes dejar un comentario.
¡Apoya este sitio!
¿Ya puedes servir servlets gracias a esta pequeña guía de instalación? Si es así y quieres agradecérmelo puedes hacerlo dejando tan sólo 1 $ de propina desde PayPal:
O, si te sientes especialmente agradecido, puedes invitarme a un cappuccino:
¡Gracias!
Actualizado a la versión 9.0.64.
¡Muchas gracias! Para desinstalar el Tomcat, ¿cuál sería el proceso?
Hola, Pepe. Detén y deshabilita el servicio, elimina el archivo de configuración de Tomcat para Systemd y elimina la carpeta de instalación bajo /opt. También puedes eliminar el usuario y el grupo tomcat.
Actualizado a la versión 9.0.62.
Actualizado a la versión 9.0.54.
Actualizado a la versión 9.0.53.