Cómo instalar el servidor de aplicaciones WildFly con el proxy inverso Nginx en Debian 12

WildFly, antes JBoss, es un servidor de aplicaciones gratuito y de código abierto que te ayuda a crear e implantar aplicaciones web Java. Está escrito en Java y cumple las especificaciones de Java EE (Enterprise Edition). WildFly fue creado por JBoss, pero ahora lo desarrolla RedHat. Es un servidor de aplicaciones potente, listo para la producción, modular y ligero, que proporciona todas las herramientas y funciones necesarias para ejecutar e implantar aplicaciones web Java.

WildFly es un servidor de aplicaciones multiplataforma que proporciona herramientas para aplicaciones Java, como EJB, JPA, Servlets, JAX-RS, Batch y seguridad.

En esta guía aprenderás a instalar WildFly o el tiempo de ejecución de aplicaciones JBoss en un servidor Debian 12 paso a paso. Instalarás WildFly, habilitarás la consola de administración, crearás un usuario administrador de WildFly e instalarás y configurarás Nginx como proxy inverso.

Requisitos previos

Antes de continuar, reúne lo siguiente

  • Un servidor Debian 12 con 4 GB o más de memoria.
  • Un usuario no root con privilegios de administrador sudo.

Instalación de Java OpenJDK

WildFly es un tiempo de ejecución de aplicaciones Java flexible y ligero para crear aplicaciones. En esta sección, instalarás y utilizarás Java OpenJDK 17 para instalar WildFly en tu servidor Debian.

En primer lugar, ejecuta el siguiente comando para actualizar tu repositorio Debian.

sudo apt update

Ahora, instala el paquete Java OpenJDK ejecutando el siguiente comando. Esto instalará el paquete default-jdk, que equivale a la versión Java OpenJDK 17 LTS (Long Term Supports).

sudo apt install default-jdk

Introduce y para proceder a la instalación.

instala java openjdk

Una vez que hayas instalado Java, verifica la versión de Java utilizando el comando que aparece a continuación. Deberías ver que Java OpenJDK 17 está instalado.

java -version

comprobar la versión de java

Instalación y configuración de WildFly

Una vez que hayas instalado Java OpenJDK, puedes iniciar la instalación de WildFly completando las siguientes tareas:

  • Añadir usuario y grupo de WildFly
  • Descarga del paquete binario de WildFly
  • Configurar la instalación de WildFly
  • Ejecutar WildFly como un servicio Systemd

Comencemos.

Añadir usuario y grupo wildfly

En primer lugar, crearás un nuevo usuario y grupo del sistema wildfly que se utilizarán para ejecutar tu instalación de WildFly.

Ejecuta el siguiente comando para añadir un nuevo grupo y usuario llamado wildfly. Con esto, también establecerás el directorio principal predeterminado para los usuarios de wildfly en /opt/wildfly, que se utilizará como directorio de instalación de WildFly.

sudo groupadd -r wildfly
sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly

Descarga del paquete binario de WildFly

Tras añadir un usuario systemd, descargarás el paquete binario de WildFly mediante wget. Asegúrate de visitar la página de descargas de WildFly para obtener la última versión del mismo.

Antes de eso, instala unzip mediante el siguiente comando apt.

sudo apt install unzip -y

Después, visita la página de descargas de WildFly y copia el enlace a la última versión de WildFly. Descarga el paquete binario de WildFly mediante el comando wget como se indica a continuación. En este ejemplo, instalarás WildFly 30.0.0.

wget https://github.com/wildfly/wildfly/releases/download/30.0.0.Final/wildfly-30.0.0.Final.zip

A continuación, descomprime el paquete binario de WildFly y mueve el directorio extraído a /opt/wildfly.

unzip wildfly-30.0.0.Final.zip
sudo mv wildfly-30.0.0.Final /opt/wildfly

Por último, ejecuta el siguiente comando para cambiar la propiedad del directorio /opt/wildfly al usuario wildfly.

sudo chown -RH wildfly: /opt/wildfly

Configuración de la instalación de WildFly

En este ejemplo, instalarás WildFly en una sola máquina en modo autónomo. Por lo tanto, todas las configuraciones que modifiques aquí están relacionadas con las configuraciones autónomas de WildFly.

Ejecuta el siguiente comando del editor nano para abrir el archivo /opt/wildfly/bin/standalone.conf.

sudo nano /opt/wildfly/bin/standalone.conf

Cambia el valor Xmx512m dentro de la variable de entorno JBOSS_JAVA_SIZING para aumentar el tamaño máximo de memoria de montón predeterminado de WildFly, como se indica a continuación.

Asegúrate de ajustar el tamaño máximo de memoria heap con tu servidor actual. El siguiente ejemplo establece la memoria heap máxima en 4 GB.

  JBOSS_JAVA_SIZING="-Xms64m -Xmx4096m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m"

Guarda y sal del archivo cuando hayas terminado.

configurar memoria heap wildfly

Ahora crea un nuevo directorio de configuración /etc/wildfly utilizando el siguiente comando.

sudo mkdir -p /etc/wildfly

Copia el archivo de configuración de WildFly en /etc/wildfly/wildfly.conf y ábrelo utilizando el siguiente comando del editor nano.

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
sudo nano /etc/wildfly/wildfly.conf

Cambia el valor predeterminado de WILDFLY_BIND a 127.0.0.1 y añade una variable WILDFLY_CONSOLE_BIND para habilitar la consola de administración de WildFly. Tanto WildFly como la consola de administración se ejecutarán en localhost.

# The address to bind to
WILDFLY_BIND=127.0.0.1

# Enable Admin
WILDFLY_CONSOLE_BIND=127.0.0.1

Cuando hayas terminado, guarda y sal del archivo.

ejecutar wildfly standalone

A continuación, copia el script de inicio de WildFly en /opt/wildfly/bin/launch.sh y hazlo ejecutable mediante el siguiente comando chmod

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
sudo chmod +x /opt/wildfly/bin/*.sh

Abre el script de inicio de WildFly /opt/wildfly/bin/launch.sh utilizando el siguiente comando del editor nano.

sudo nano /opt/wildfly/bin/launch.sh

Inserta la nueva opción de comando‘-bmanagement $4‘ para activar la consola de administración de WildFly de esta forma.

if [[ "$1" == "domain" ]]; then
    $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4
else
    $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4
fi

Guarda y cierra el archivo cuando hayas terminado.

activar la gestión administrativa

Por último, ejecuta el siguiente comando para cambiar la propiedad del directorio de instalación de WildFly /opt/wildfly al usuario wildfly.

sudo chown -RH wildfly: /opt/wildfly

Ejecutar WildFly como servicio Systemd

Después de configurar WildFly como modo autónomo, configurarás un archivo de servicio systemd para WildFly. Esto te permitirá ejecutar WIldFly en segundo plano y gestionar WildFly fácilmente mediante la utilidad systemctl.

Copia el archivo de servicio systemd de WildFly en /etc/systemd/system/wildfly.service y modifícalo utilizando el siguiente comando del editor nano.

sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
sudo nano /etc/systemd/system/wildfly.service

En la opción ExecStart, añade un nuevo parámetro de inicio $WILDFLY_CONSOLE_BIND para activar la consola de administración de WildFly.

ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND

Cuando termines, guarda el archivo y sal del editor.

activar consola

A continuación, ejecuta el siguiente comando systemctl para recargar el gestor systemd.

sudo systemctl daemon-reload

A continuación, inicia y habilita el servicio wildfly mediante el siguiente comando.

sudo systemctl start wildfly
sudo systemctl enable wildfly

wildfly systemd

Verifica el servicio wildfly para asegurarte de que se está ejecutando ejecutando el siguiente comando.

sudo systemctl status wildfly

Si el servicio wildfly se está ejecutando, se mostrará la siguiente salida.

servicio wildfly

También puedes verificar la lista de puertos abiertos en tu sistema ejecutando el siguiente comando.

ss -antpl | grep -i java

Deberías ver varios puertos 8080, 8443 y 9990 que utiliza WildFly.

comprueba el puerto wildfly

Adición de la gestión de usuarios de WildFly

Tras instalar WildFly, crearás un nuevo usuario administrador para WildFly mediante el script /opt/wildfly/bin/add-user.sh.

Ejecuta el script /opt/wildfly/bin/add-user.sh como se indica a continuación.

sh /opt/wildfly/bin/add-user.sh

Ahora se te preguntará lo siguiente:

  • Introduce a para crear un nuevo usuario de administración de WildFly.
  • Introduce tu usuario admin y tu contraseña, y repítelo.
  • Pulsa INTRO cuando se te pida la configuración del grupo.
  • Introduce sí para añadir tu usuario al ManagementRealm.

Una vez finalizado el proceso, deberías ver que tu nuevo usuario se ha añadido a la configuración de WildFly.

añadir usuario administrador

Configuración de Nginx como proxy inverso

Llegados a este punto, ya has realizado la instalación de WildFLy, has habilitado la consola de administración y has creado el usuario admin. El siguiente paso es instalar Nginx y configurarlo como proxy inverso para WildFly.

Ejecuta el siguiente comando apt para instalar Nginx en tu servidor Debian. Introduce y para proceder a la instalación.

sudo apt install nginx

instalar nginx

Una vez instalado Nginx, lo configurarás como proxy inverso para WildFly.

Crea una nueva configuración de cabeceras de proxy Nginx /etc/nginx/conf.d/proxy_headers.conf utilizando el comando del editor nano que aparece a continuación.

sudo nano /etc/nginx/conf.d/proxy_headers.conf

Introduce la siguiente configuración en el archivo.

```
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
add_header Front-End-Https on;
add_header Cache-Control no-cache;
```

Guarda y sal del archivo cuando hayas terminado.

A continuación, ejecuta el siguiente comando del editor nano para crear una nueva configuración de bloque de servidor Nginx /etc/nginx/sites-available/wildfly.

sudo nano /etc/nginx/sites-available/wildfly

Introduce la configuración siguiente para configurar Nginx como proxy inverso para tu instalación de WildFly. Asegúrate de cambiar el dominio dentro de la opción server_name, puedes utilizar un nombre de dominio local.

server {
    listen          80;
    server_name     wildfly.hwdomain.io;

location / {
include conf.d/proxy_headers.conf;
proxy_pass http://127.0.0.1:8080;
}

location /management {
include conf.d/proxy_headers.conf;
proxy_pass http://127.0.0.1:9990/management;
}

location /console {
include conf.d/proxy_headers.conf;
proxy_pass http://127.0.0.1:9990/console;
}

location /logout {
include conf.d/proxy_headers.conf;
proxy_pass http://127.0.0.1:9990/logout;
}

location /error {
include conf.d/proxy_headers.conf;
proxy_pass http://127.0.0.1:9990;
}

}

Guarda y cierra el archivo cuando hayas terminado.

Ahora ejecuta el siguiente comando para activar el archivo de host virtual wildfly y verificar tu sintaxis Nginx.

sudo ln -s /etc/nginx/sites-available/wildfly /etc/nginx/sites-enabled/
sudo nginx -t

Si la sintaxis de Nginx es correcta, aparecerá el mensaje «syntax is ok-test is successful«.

configuración de nginx

Por último, ejecuta el siguiente comando para reiniciar el servicio Nginx y aplicar los cambios que has realizado. A continuación, verifica el servicio Nginx para asegurarte de que se está ejecutando.

sudo systemctl restart nginx
sudo systemctl status nginx

Si Nginx se está ejecutando, deberías obtener la salida activo (en ejecución).

verificar nginx

Acceso a WildFly a través del cliente

En tu máquina cliente, abre el archivo hosts utilizando tu editor de texto. Para usuarios de Windows, abre el archivo C:\Windows\System32\drivers\etc\hosts como administrador, mientras que para usuarios de Linux o macOS, abre el archivo /etc/hosts con privilegios sudo.

Introduce la siguiente configuración y asegúrate de cambiar el nombre de dominio local y la dirección IP con tus datos.

192.168.5.15  wildfly.hwdomain.io

Guarda y cierra el archivo cuando hayas terminado.

Inicia tu navegador web y visita tu dominio local de WildFly (por ejemplo: http:wildfly.hwdomain.io/). Si la instalación se ha realizado correctamente, deberías ver la página de índice predeterminada de WildFly, que es la siguiente:

wildfly jboss

Ahora haz clic en el enlace Consola de administración para acceder a la consola de administración de WildFly. Se abrirá una nueva pestaña y se te redirigirá a la consola de administración de WildFly con la ruta URL /consola.

Introduce tu usuario y contraseña de administrador para la consola de administración de WildFly y, a continuación, haz clic en Iniciar sesión.

acceder a la consola de administración

Si tienes el usuario y la contraseña correctos, deberías ver la consola de administración de WildFly como se muestra a continuación.

consola de administración de wildfly

A continuación, haz clic en el menú Tiempo de ejecución y selecciona tu servidor. Deberías ver la confirmación de que WildFly está en funcionamiento.

estado tiempo de ejecución

Por último, selecciona el menú Estado y deberías ver el estado detallado de tu instalación de WildFly, incluida la configuración del montón cambiada a 4 GB.

estado de ejecución

Conclusión

En conclusión, ya has terminado la instalación de WildFly en Debian 12 paso a paso. Has instalado WildFly, habilitado la consola de administración y creado un usuario administrador de WildFly. Además, también has configurado Nginx como proxy inverso para Wildfly. A partir de ahora, puedes desplegar y ejecutar tus aplicaciones JBoss utilizando el tiempo de ejecución de aplicaciones de WildFly.

También te podría gustar...