WildFly, anciennement connu sous le nom de JBoss, est un environnement d'exécution d'application open source multiplateforme écrit en Java qui vous aide à créer des applications étonnantes. WildFly est flexible, léger et basé sur des sous-systèmes enfichables qui peuvent être ajoutés ou supprimés selon les besoins.
Dans ce didacticiel, nous vous guiderons à travers les étapes requises pour installer le serveur d'applications WildFly sur Debian 9.
Prérequis #
L'utilisateur avec lequel vous êtes connecté doit avoir les privilèges sudo pour pouvoir installer les packages.
Installation de Java OpenJDK #
WildFly nécessite l'installation de Java. Nous allons installer OpenJDK, qui est le développement et l'environnement d'exécution Java par défaut dans Debian 9 :
sudo apt update
sudo apt install default-jdk
Création de l'utilisateur #
Créez un nouvel utilisateur système et un groupe nommé wildfly
avec le répertoire personnel /opt/wildfly
qui exécutera le service WildFly :
sudo groupadd -r wildfly
sudo useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
Installation de WildFly #
Au moment de la rédaction, la dernière version de WildFly est 16.0.0
. Avant de passer à l'étape suivante, vous devez vérifier la page de téléchargement pour une nouvelle version. S'il y a une nouvelle version, remplacez le WILDFLY_VERSION
variable dans la commande ci-dessous.
Téléchargez l'archive WildFly dans le /tmp
répertoire en utilisant le wget
suivant commande :
WILDFLY_VERSION=16.0.0.Final
wget https://download.jboss.org/wildfly/$WILDFLY_VERSION/wildfly-$WILDFLY_VERSION.tar.gz -P /tmp
Une fois le téléchargement terminé, extrayez le fichier tar.gz et déplacez-le vers /opt
répertoire :
sudo tar xf /tmp/wildfly-$WILDFLY_VERSION.tar.gz -C /opt/
Créer un lien symboliquewildfly
qui pointera vers le répertoire d'installation de WildFly :
sudo ln -s /opt/wildfly-$WILDFLY_VERSION /opt/wildfly
WildFly fonctionne comme un wildfly
utilisateur qui doit avoir accès au répertoire d'installation de WildFly. Modifiez la propriété du répertoire en utilisateur et groupe wildfly
:
sudo chown -RH wildfly: /opt/wildfly
Configuration de Systemd #
Le package WildFly inclut les fichiers nécessaires pour exécuter WildFly en tant que service.
Commencez par créer un répertoire qui contiendra le fichier de configuration de WildFly :
sudo mkdir -p /etc/wildfly
Copiez le fichier de configuration dans /etc/wildfly
répertoire :
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
Ce fichier vous permet de spécifier le mode WildFly et l'adresse de liaison. Par défaut, WildFly fonctionnera en mode autonome et écoutera sur toutes les interfaces. Modifiez le fichier selon vos besoins.
/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
Ensuite, copiez WildFly launch.sh
script au /opt/wildfly/bin/
répertoire :
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
Les scripts à l'intérieur de bin
le répertoire doit avoir un drapeau exécutable :
sudo sh -c 'chmod +x /opt/wildfly/bin/*.sh'
La dernière étape consiste à copier le fichier d'unité systemd nommé dans le /etc/systemd/system/
répertoire :
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
Rechargez la configuration du gestionnaire systemd :
sudo systemctl daemon-reload
Démarrer et activer le service WildFly pour qu'il démarre automatiquement au démarrage :
sudo systemctl start wildfly
sudo systemctl enable wildfly
Vérifiez l'état du service avec la commande suivante :
sudo systemctl status wildfly
* wildfly.service - The WildFly Application Server
Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: enabled)
Active: active (running) since Sun 2019-02-17 04:59:39 PST; 2s ago
Main PID: 10005 (launch.sh)
Tasks: 62 (limit: 2319)
CGroup: /system.slice/wildfly.service
Réglage du pare-feu #
Si votre serveur est protégé par un pare-feu et que vous souhaitez accéder à l'interface WildFly depuis l'extérieur de votre réseau local, vous devez ouvrir le port 8080
.
Pour autoriser le trafic sur le port 8080
tapez la commande suivante :
sudo ufw allow 8080/tcp
Lors de l'exécution d'une application WildFly dans un environnement de production, vous aurez très probablement un équilibreur de charge ou un proxy inverse et il est recommandé de restreindre l'accès au port 8080 uniquement à votre réseau interne. Configuration de l'authentification WildFly #
Maintenant que WildFly est installé et en cours d'exécution, l'étape suivante consiste à créer un utilisateur qui pourra se connecter à l'aide de la console d'administration ou à distance à l'aide de la CLI.
Pour ajouter un nouvel utilisateur, utilisez le add-user.sh
script situé dans le répertoire bin de WildFly :
sudo /opt/wildfly/bin/add-user.sh
Il vous sera demandé quel type d'utilisateur souhaitez-vous ajouter :
What type of user do you wish to add?
a) Management User (mgmt-users.properties)
b) Application User (application-users.properties)
(a):
Sélectionnez a
et appuyez sur Enter
:
Ensuite, le script vous demandera d'entrer les détails du nouvel utilisateur :
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" />
Le nouvel utilisateur sera ajouté aux fichiers de propriétés utilisés pour l'authentification.
Test de l'installation WildFly #
Pour accéder à la page WildFly par défaut, ouvrez votre navigateur et tapez :http://<your_domain_or_IP_address>:8080
En supposant que l'installation est réussie, un écran semblable au suivant apparaît :
Accéder à la console d'administration WildFly #
Interface de ligne de commande #
Pour accéder à la console d'administration WildFly à partir de la ligne de commande, vous pouvez utiliser le jboss-cli.sh
script.
Accédez au répertoire bin de WildFly et exécutez le script avec le --connect
choix :
cd /opt/wildfly/bin/
./jboss-cli.sh --connect
Il vous sera demandé d'entrer votre nom d'utilisateur et votre mot de passe administratifs (créés à l'étape 6) :
Authenticating against security realm: ManagementRealm
Username: linuxize
Password:
Une fois connecté, l'invite de la console passera à [standalone@localhost:9990 /]
. Tapez help
pour obtenir une liste des commandes et la syntaxe des commandes.
À partir de là, vous pouvez déployer et annuler le déploiement de vos applications, gérer les utilisateurs et les groupes et configurer et surveiller le serveur WildFly.
Numéro d'interface Web
Si vous préférez gérer votre serveur à partir de l'interface graphique, WildFly fournit également une console Web.
Par défaut, la console d'administration WildFly est disponible uniquement à partir de localhost sur http://localhost:9990/console
. Connectez-vous en utilisant l'utilisateur que vous avez créé à l'étape 6.
Si vous souhaitez accéder à la console à distance, vous devrez apporter de petites modifications au wildfly.service
, wildfly.conf
et launch.sh
fichiers.
Ouvrez le wildfly.conf
et ajoutez WILDFLY_CONSOLE_BIND=0.0.0.0
à la fin du fichier.
# 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
Ouvrez le launch.sh
et modifiez les lignes en surbrillance :
#!/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
Redémarrez le service pour que les modifications prennent effet :
sudo systemctl restart wildfly
Ouvrez le wildfly.service
et modifiez les lignes en surbrillance :
[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
Créez le /var/run/wildfly
répertoire et définissez les autorisations appropriées :
sudo mkdir /var/run/wildfly/
sudo chown wildfly: /var/run/wildfly/
Rechargez la configuration du gestionnaire systemd :
sudo systemctl daemon-reload
Redémarrez le service WildFly en exécutant :
sudo systemctl restart wildfly
En supposant que votre pare-feu ne bloque pas le port 9990
, vous devriez pouvoir accéder à la console d'administration WildFly à l'adresse http://<your_domain_or_IP_address>:9990/console
.