Installation WildFly · 8 min read · Sep 10, 2025

Comment installer et configurer WildFly (JBoss) sur Debian 11

Wildfly est un serveur d’applications écrit en Java et développé par RedHat. C’est un serveur simple, léger et puissant avec une CLI et une console d’administration. Il est open-source, multiplateforme et basé sur des sous-systèmes modulaires qui peuvent être ajoutés ou supprimés selon les besoins. Il fournit toutes les fonctionnalités nécessaires pour exécuter une application web Java.

Dans ce tutoriel, je vais vous montrer comment installer Wildfly avec Nginx comme proxy inverse sur Debian 11.

Prérequis

  • Un serveur exécutant Debian 11.
  • Un nom de domaine valide pointé vers l’IP de votre serveur.
  • Un mot de passe root configuré sur votre serveur.

Installer Java JDK

Wildfly est une application basée sur Java, donc Java doit être installé sur votre serveur. S’il n’est pas installé, vous pouvez l’installer en exécutant la commande suivante :

apt-get install default-jdk -y

Une fois Java installé, vous pouvez le vérifier en utilisant la commande suivante :

java --version

Vous devriez voir la version de Java dans la sortie suivante :

openjdk 11.0.12 2021-07-20
OpenJDK Runtime Environment (build 11.0.12+7-post-Debian-2deb10u1)
OpenJDK 64-Bit Server VM (build 11.0.12+7-post-Debian-2deb10u1, mixed mode, sharing)

Installer Wildfly

Tout d’abord, créez un utilisateur et un groupe pour exécuter l’application Wildfly en utilisant la commande suivante :

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

Ensuite, téléchargez la dernière version de Wildfly en utilisant la commande wget :

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

Une fois le téléchargement terminé, décompressez le fichier téléchargé avec la commande suivante :

unzip wildfly-25.0.1.Final.zip

Ensuite, déplacez le répertoire extrait vers /opt en utilisant la commande suivante :

mv wildfly-25.0.1.Final /opt/wildfly

Ensuite, changez la propriété du répertoire /opt/wildfly :

chown -RH wildfly:wildfly /opt/wildfly

Ensuite, créez un répertoire de configuration Wildfly à l’intérieur de /etc en utilisant la commande suivante :

mkdir -p /etc/wildfly

Ensuite, copiez tous les fichiers nécessaires du répertoire Wildfly vers le répertoire /etc/wildfly :

cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/  
cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/  
cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/

Ensuite, définissez les permissions d’exécution pour tous les fichiers de script shell :

chmod +x /opt/wildfly/bin/*.sh

Ensuite, rechargez le démon systemd avec la commande suivante :

systemctl daemon-reload

Ensuite, démarrez et activez le service Wildfly en utilisant la commande suivante :

systemctl start wildfly  
systemctl enable wildfly

Pour vérifier l’état du service Wildfly, exécutez la commande suivante :

systemctl status wildfly

Vous obtiendrez la sortie suivante :

? wildfly.service - Le serveur d'applications WildFly
   Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-12-10 14:55:07 UTC; 6s ago
 Main PID: 20928 (launch.sh)
    Tasks: 59 (limit: 4701)
   Memory: 171.6M
   CGroup: /system.slice/wildfly.service
           ??20928 /bin/bash /opt/wildfly/bin/launch.sh standalone standalone.xml 0.0.0.0
           ??20929 /bin/sh /opt/wildfly/bin/standalone.sh -c standalone.xml -b 0.0.0.0
           ??21022 java -D[Standalone] -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=tru

Dec 10 14:55:07 debian11 systemd[1]: Started Le serveur d'applications WildFly.

Activer la console d’administration Wildfly

Par défaut, la console d’administration Wildfly est désactivée. Il est recommandé de l’activer pour gérer l’application Wildfly.

Vous pouvez l’activer en modifiant le fichier de configuration Wildfly :

nano /etc/wildfly/wildfly.conf

Changez les lignes suivantes :

WILDFLY_BIND=127.0.0.1
WILDFLY_CONSOLE_BIND=127.0.0.1

Enregistrez et fermez le fichier, puis modifiez le script de lancement Wildfly et activez la console d’administration.

nano /opt/wildfly/bin/launch.sh

Changez le fichier comme indiqué ci-dessous :

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

Enregistrez et fermez le fichier, puis modifiez le fichier systemd de Wildfly :

nano /etc/systemd/system/wildfly.service

Changez la ligne suivante :

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

Enregistrez et fermez le fichier, puis rechargez le démon systemd pour appliquer les modifications de configuration :

systemctl daemon-reload

Ensuite, redémarrez le service Wildfly pour appliquer les modifications :

systemctl restart wildfly

Vous pouvez également vérifier l’état de Wildfly avec la commande suivante :

systemctl status wildfly

Vous obtiendrez la sortie suivante :

? wildfly.service - Le serveur d'applications WildFly
   Loaded: loaded (/etc/systemd/system/wildfly.service; disabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-12-10 14:57:22 UTC; 3s ago
 Main PID: 21182 (launch.sh)
    Tasks: 64 (limit: 4701)
   Memory: 205.6M
   CGroup: /system.slice/wildfly.service
           ??21182 /bin/bash /opt/wildfly/bin/launch.sh standalone standalone.xml 127.0.0.1 127.0.0.1
           ??21183 /bin/sh /opt/wildfly/bin/standalone.sh -c standalone.xml -b 127.0.0.1 -bmanagement 127.0.0.1
           ??21282 java -D[Standalone] -server -Xms64m -Xmx512m -XX:MetaspaceSize=96M -XX:MaxMetaspaceSize=256m -Djava.net.preferIPv4Stack=tru

Dec 10 14:57:22 debian11 systemd[1]: Started Le serveur d'applications WildFly.

À ce stade, Wildfly est démarré et écoute sur les ports 8080 et 9990. Vous pouvez les vérifier avec la commande suivante :

ss -plnt

Vous obtiendrez la sortie suivante :

State        Recv-Q       Send-Q             Local Address:Port             Peer Address:Port                                                 
LISTEN       0            128                      0.0.0.0:22                    0.0.0.0:*           users:(("sshd",pid=678,fd=3))            
LISTEN       0            128                    127.0.0.1:8443                  0.0.0.0:*           users:(("java",pid=21282,fd=485))        
LISTEN       0            50                     127.0.0.1:9990                  0.0.0.0:*           users:(("java",pid=21282,fd=487))        
LISTEN       0            80                     127.0.0.1:3306                  0.0.0.0:*           users:(("mysqld",pid=12461,fd=21))       
LISTEN       0            128                    127.0.0.1:8080                  0.0.0.0:*           users:(("java",pid=21282,fd=476))        
LISTEN       0            128                         [::]:22                       [::]:*           users:(("sshd",pid=678,fd=4))            

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Créer un utilisateur administrateur Wildfly

Ensuite, vous devrez également créer un utilisateur administrateur pour accéder à la console d’administration Wildfly. Vous pouvez le créer en exécutant la commande suivante :

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

On vous demandera de choisir les types d’utilisateur :

Quel type d'utilisateur souhaitez-vous ajouter ? 
 a) Utilisateur de gestion (mgmt-users.properties) 
 b) Utilisateur d'application (application-users.properties)
(a): a

Tapez a et appuyez sur la touche Entrée pour ajouter l’utilisateur de gestion. On vous demandera de définir votre nom d’utilisateur et votre mot de passe comme indiqué ci-dessous :

Entrez les détails du nouvel utilisateur à ajouter.
Utilisation du domaine 'ManagementRealm' tel que découvert à partir des fichiers de propriétés existants.
Nom d'utilisateur : hitesh
Les recommandations de mot de passe sont listées ci-dessous. Pour modifier ces restrictions, éditez le fichier de configuration add-user.properties.
 - Le mot de passe doit être différent du nom d'utilisateur
 - Le mot de passe ne doit pas être l'une des valeurs restreintes suivantes {root, admin, administrator}
 - Le mot de passe doit contenir au moins 8 caractères, 1 caractère(s) alphabétique(s), 1 chiffre(s), 1 symbole(s) non alphanumérique(s)
Mot de passe : 
Ressaisir le mot de passe : 

Fournissez votre nom d’utilisateur, mot de passe et appuyez sur Entrée. On vous demandera d’ajouter des utilisateurs au domaine :

Quels groupes voulez-vous que cet utilisateur appartienne ? (Veuillez entrer une liste séparée par des virgules, ou laissez vide pour aucun)[  ]: 
Sur le point d'ajouter l'utilisateur 'hitesh' pour le domaine 'ManagementRealm'
Est-ce correct oui/non ? oui

Tapez oui et appuyez sur la touche Entrée pour continuer. Une fois l’utilisateur ajouté, vous obtiendrez la sortie suivante :

Utilisateur 'hitesh' ajouté au fichier '/opt/wildfly/standalone/configuration/mgmt-users.properties'
Utilisateur 'hitesh' ajouté au fichier '/opt/wildfly/domain/configuration/mgmt-users.properties'
Utilisateur 'hitesh' avec groupes ajoutés au fichier '/opt/wildfly/standalone/configuration/mgmt-groups.properties'
Utilisateur 'hitesh' avec groupes ajoutés au fichier '/opt/wildfly/domain/configuration/mgmt-groups.properties'
Cet nouvel utilisateur va-t-il être utilisé pour qu'un processus AS se connecte à un autre processus AS ? 
par exemple, pour un contrôleur de hôte esclave se connectant au maître ou pour une connexion de télécommunication pour des appels de serveurs à serveurs Jakarta Enterprise Beans.
oui/non ? oui
Pour représenter l'utilisateur, ajoutez ce qui suit à la définition des identités du serveur

Une fois que vous avez terminé, vous pouvez passer à l’étape suivante.

Installer et configurer Nginx comme proxy inverse

Ensuite, vous devrez configurer Nginx comme proxy inverse pour accéder à Wildfly via le port 80.

Tout d’abord, installez le package Nginx en utilisant la commande ci-dessous :

apt-get install nginx -y

Une fois Nginx installé, créez un fichier proxy Nginx avec la commande suivante :

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

Ajoutez les lignes suivantes :

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

Enregistrez et fermez le fichier, puis créez un fichier de configuration de l’hôte virtuel Nginx pour Wildfly :

nano /etc/nginx/conf.d/wildfly.conf

Ajoutez les lignes suivantes :

server {
  listen          80;
  server_name     wildfly.votredomaine.com;

  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;
  }

}

Enregistrez et fermez le fichier, puis vérifiez la syntaxe de Nginx pour toute erreur en utilisant la commande suivante :

ginx -t

Vous devriez voir la sortie suivante :

ginx: le fichier de configuration /etc/nginx/nginx.conf a une syntaxe correcte
ginx: le test du fichier de configuration /etc/nginx/nginx.conf est réussi

Enfin, redémarrez le service Nginx pour appliquer les modifications :

systemctl restart nginx

Vous pouvez également vérifier l’état de Nginx en utilisant la commande ci-dessous :

systemctl status nginx

Vous obtiendrez la sortie suivante :

? nginx.service - Un serveur web haute performance et un serveur proxy inverse
   Loaded: loaded (/lib/systemd/system/nginx.service; enabled; vendor preset: enabled)
   Active: active (running) since Fri 2021-12-10 15:12:26 UTC; 9s ago
     Docs: man:nginx(8)
  Process: 22115 ExecStartPre=/usr/sbin/nginx -t -q -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
  Process: 22116 ExecStart=/usr/sbin/nginx -g daemon on; master_process on; (code=exited, status=0/SUCCESS)
 Main PID: 22117 (nginx)
    Tasks: 3 (limit: 4701)
   Memory: 3.8M
   CGroup: /system.slice/nginx.service
           ??22117 nginx: processus maître /usr/sbin/nginx -g daemon on; master_process on;
           ??22118 nginx: processus de travail
           ??22119 nginx: processus de travail

Dec 10 15:12:25 debian11 systemd[1]: Démarrage d'un serveur web haute performance et d'un serveur proxy inverse...
Dec 10 15:12:26 debian11 systemd[1]: Démarré un serveur web haute performance et un serveur proxy inverse.

À ce stade, Nginx est installé et configuré pour servir Wildfly. Vous pouvez maintenant passer à l’étape suivante.

Accéder à l’interface web de Wildfly

Maintenant, ouvrez votre navigateur web et accédez à la page de l’application Wildfly en utilisant l’URL http://wildfly.votredomaine.com. Vous devriez voir la page par défaut de Wildfly sur l’écran suivant :

Serveur d'applications WildFly JAVA

Pour accéder à la console d’administration Wildfly, tapez l’URL http://wildfly.votredomaine.com/console/ dans votre navigateur web. On vous demandera de fournir un nom d’utilisateur et un mot de passe administratifs comme indiqué ci-dessous :

Connexion WildFly

Fournissez votre nom d’utilisateur administrateur, mot de passe et cliquez sur le bouton Se connecter. Une fois connecté, vous devriez voir le tableau de bord d’administration de Wildfly :

Tableau de bord administrateur WildFly

Conclusion

Félicitations ! vous avez réussi à installer Wildfly avec Nginx comme proxy inverse sur Debian 11. Vous pouvez maintenant utiliser Wildfly pour héberger votre application Java sur Internet. N’hésitez pas à me poser des questions si vous en avez.

Share: X/Twitter LinkedIn

Recevez de nouveaux articles dans votre boîte de réception.

Aucun spam. Désabonnez-vous à tout moment.