
WildFly, anteriormente conocido como JBoss, es un tiempo de ejecución de aplicaciones de código abierto multiplataforma escrito en Java que lo ayuda a crear aplicaciones increíbles. WildFly es flexible, liviano y se basa en subsistemas conectables que se pueden agregar o quitar según sea necesario.
Este tutorial explica cómo instalar el servidor de aplicaciones WildFly en CentOS 7.
Requisitos previos #
Deberá iniciar sesión como usuario con acceso sudo para poder instalar paquetes en su sistema CentOS.
Paso 1:Instalar Java OpenJDK #
WildFly 9 requiere Java SE 8 o posterior. En este tutorial, instalaremos OpenJDK, la implementación de código abierto de la plataforma Java, que es el tiempo de ejecución y desarrollo de Java predeterminado en CentOS 7.
Instale el paquete OpenJDK ejecutando:
sudo yum install java-1.8.0-openjdk-devel
Paso 2:Cree un número de usuario
Ejecutar WildFly como usuario raíz es un riesgo de seguridad y no se considera una buena práctica.
Para crear un nuevo usuario y grupo del sistema llamado wildfly
con el directorio de inicio /opt/wildfly
ejecutar:
sudo groupadd -r wildfly
sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
Paso 3:Instalar WildFly #
En el momento de escribir este artículo, la última versión de WildFly es 16.0.0
. Antes de continuar con el siguiente paso, debe consultar la página de descarga para obtener una nueva versión. Si hay una nueva versión, reemplace la WILDFLY_VERSION
variable en el siguiente comando.
Descargue el archivo WildFly en /tmp
directorio usando el siguiente wget
comando:
WILDFLY_VERSION=16.0.0.Final
wget https://download.jboss.org/wildfly/$WILDFLY_VERSION/wildfly-$WILDFLY_VERSION.tar.gz -P /tmp
Cuando se complete la descarga, descomprima el archivo tar.gz y muévalo a /opt
directorio:
sudo tar xf /tmp/wildfly-$WILDFLY_VERSION.tar.gz -C /opt/
A continuación, cree un enlace simbólico wildfly
eso apuntará al directorio de instalación de WildFly:
sudo ln -s /opt/wildfly-$WILDFLY_VERSION /opt/wildfly
WildFly se ejecutará bajo wildfly
usuario que necesita tener acceso al directorio de instalación de WildFly.
Cambie la propiedad del directorio al usuario y grupo wildfly
con el siguiente comando chown:
sudo chown -RH wildfly: /opt/wildfly
Paso 4:Configurar Systemd #
El paquete WildFly incluye los archivos necesarios para ejecutar WildFly como servicio.
Comience creando un directorio que contendrá el archivo de configuración de WildFly:
sudo mkdir -p /etc/wildfly
Copie el archivo de configuración en /etc/wildfly
directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
Este archivo le permite especificar el modo WildFly y la dirección de enlace. De forma predeterminada, WildFly se ejecutará en modo independiente y escuchará en todas las interfaces. Puede editar el archivo según sus necesidades.
/etc/wildfly/wildfly.conf# The configuration you want to run
WILDFLY_CONFIG=standalone.xml
# The mode you want to run
WILDFLY_MODE=standalone
# The address to bind to
WILDFLY_BIND=0.0.0.0
A continuación, copie WildFly launch.sh
script al /opt/wildfly/bin/
directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
Los scripts dentro de bin
el directorio debe tener un indicador ejecutable:
sudo sh -c 'chmod +x /opt/wildfly/bin/*.sh'
Copie el archivo de la unidad systemd llamado a /etc/systemd/system/
directorio:
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
Notifique a systemd que creamos un nuevo archivo de unidad:
sudo systemctl daemon-reload
Inicie el servicio WildFly y permita que se inicie automáticamente en el momento del arranque ejecutando:
sudo systemctl start wildfly
sudo systemctl enable wildfly
Verifique que el servicio se esté ejecutando:
sudo systemctl status wildfly
● wildfly.service - The WildFly Application Server
Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: disabled)
Active: active (running) since Fri 2019-03-01 20:13:39 UTC; 3s ago
Main PID: 3680 (launch.sh)
CGroup: /system.slice/wildfly.service
Paso 5:ajuste el número de cortafuegos
Si su servidor está protegido por un firewall y desea acceder a la instancia de WildFly desde el exterior de la red local, también debe abrir el puerto 8080.
Use los siguientes comandos para abrir el puerto necesario:
Al ejecutar una aplicación WildFly en un entorno de producción, lo más probable es que tenga un equilibrador de carga o un proxy inverso, y es una buena práctica restringir el acceso al puerto 8080 solo a su red interna.sudo firewall-cmd --zone=public --permanent --add-port=8080/tcp
sudo firewall-cmd --reload
Paso 6:Configure el número de autenticación de WildFly
Ahora que WildFly está instalado y ejecutándose, el siguiente paso es crear un usuario que podrá conectarse mediante la consola de administración o de forma remota mediante la CLI.
Para agregar un nuevo usuario, use add-user.sh
script que se encuentra en el directorio bin de WildFly:
sudo /opt/wildfly/bin/add-user.sh
Se le preguntará qué tipo de usuario desea agregar:
What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a):
Seleccione a
y pulsa Enter
:
A continuación, el script le pedirá que ingrese los detalles del nuevo usuario:
Enter the details of the new user to add.
Using realm 'ManagementRealm' as discovered from the existing property files.
Username : linuxize
Password recommendations are listed below. To modify these restrictions edit the add-user.properties configuration file.
- The password should be different from the username
- The password should not be one of the following restricted values {root, admin, administrator}
- The password should contain at least 8 characters, 1 alphabetic character(s), 1 digit(s), 1 non-alphanumeric symbol(s)
Password :
Re-enter Password :
What groups do you want this user to belong to? (Please enter a comma separated list, or leave blank for none)[ ]:
About to add user 'linuxize' for realm 'ManagementRealm'
Is this correct yes/no? yes
Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-users.properties'
Added user 'linuxize' to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-users.properties'
Added user 'linuxize' with groups to file '/opt/wildfly-16.0.0.Final/standalone/configuration/mgmt-groups.properties'
Added user 'linuxize' with groups to file '/opt/wildfly-16.0.0.Final/domain/configuration/mgmt-groups.properties'
Is this new user going to be used for one AS process to connect to another AS process?
e.g. for a slave host controller connecting to the master or for a Remoting connection for server to server EJB calls.
yes/no? yes
To represent the user add the following to the server-identities definition <secret value="UGFuMjNkZWo3NyNA" />
El nuevo usuario se agregará a los archivos de propiedades utilizados para la autenticación.
Paso 6:Probar la instalación de WildFly #
Para acceder a la página predeterminada de WildFly, abra su navegador y escriba:http://<your_domain_or_IP_address>:8080
Suponiendo que la instalación sea exitosa, aparecerá una pantalla similar a la siguiente:

Paso 7:Acceda a la consola de administración de WildFly #
Interfaz de línea de comandos #
Para acceder a la consola de administración de WildFly desde la línea de comandos, puede usar jboss-cli.sh
guión.
Navegue hasta el directorio bin de WildFly y ejecute el script con --connect
opción:
cd /opt/wildfly/bin/
./jboss-cli.sh --connect
Se le pedirá que ingrese su nombre de usuario y contraseña administrativos (creados en el paso 6):
Authenticating against security realm: ManagementRealm
Username: linuxize
Password:
Una vez que inicie sesión, el aviso de la consola cambiará a [standalone@localhost:9990 /]
. Escribe help
para obtener una lista de comandos y sintaxis de comandos.
Desde aquí, puede implementar y anular la implementación de sus aplicaciones, administrar usuarios y grupos y configurar y monitorear el servidor WildFly.
Interfaz web #
Si prefiere administrar su servidor desde la GUI, WildFly también proporciona una consola basada en web.
De forma predeterminada, la consola de administración de WildFly solo está disponible desde localhost en http://localhost:9990/console
. Inicie sesión con el usuario que ha creado en el paso 6.

Si desea acceder a la consola desde ubicaciones remotas, deberá realizar pequeñas modificaciones en wildfly.service
, wildfly.conf
y launch.sh
archivos.
Abra el wildfly.conf
y agregue WILDFLY_CONSOLE_BIND=0.0.0.0
al final del archivo.
# The configuration you want to run
WILDFLY_CONFIG=standalone.xml
# The mode you want to run
WILDFLY_MODE=standalone
# The address to bind to
WILDFLY_BIND=0.0.0.0
# The address console to bind to
WILDFLY_CONSOLE_BIND=0.0.0.0
Abra el launch.sh
y edite las líneas resaltadas:
#!/bin/bash
if [ "x$WILDFLY_HOME" = "x" ]; then
WILDFLY_HOME="/opt/wildfly"
fi
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
Reinicie el servicio para que los cambios surtan efecto:
sudo systemctl restart wildfly
Abra el wildfly.service
y edite las líneas resaltadas:
[Unit]
Description=The WildFly Application Server
After=syslog.target network.target
Before=httpd.service
[Service]
Environment=LAUNCH_JBOSS_IN_BACKGROUND=1
EnvironmentFile=-/etc/wildfly/wildfly.conf
User=wildfly
LimitNOFILE=102642
PIDFile=/var/run/wildfly/wildfly.pid
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND
StandardOutput=null
[Install]
WantedBy=multi-user.target
Crea el /var/run/wildfly
directorio y establezca los permisos correctos:
sudo mkdir /var/run/wildfly/
sudo chown wildfly: /var/run/wildfly/
Notifique a systemd que el archivo de la unidad fue cambiado:
sudo systemctl daemon-reload
Reinicie el servicio WildFly ejecutando:
sudo systemctl restart wildfly
Suponiendo que el puerto 9990
no está bloqueado en su firewall, debería poder acceder a la consola de administración de WildFly en http://<your_domain_or_IP_address>:9990/console
.