Come installare WildFly JAVA Application Server su Ubuntu 22.04
WildFly, in precedenza JBoss, è un server di applicazioni gratuito e open source che ti aiuta a creare e distribuire applicazioni Web Java. È scritto in Java ed è conforme alle specifiche Java EE (Enterprise Edition). WildFly è stato creato da JBoss ma ora è sviluppato da RedHat. È un server applicativo potente, pronto per la produzione, modulare e leggero che fornisce tutti gli strumenti e le funzionalità necessari per eseguire e distribuire applicazioni Web Java.
WildFly è un server di applicazioni multipiattaforma. Fornisce strumenti come EJB, JPA, Servlet, JAX-RS, Batch e sicurezza per le tue applicazioni Java.
Questa guida ti aiuterà a installare WildFly sul server Ubuntu 22.04. Installerai manualmente WildFly dal pacchetto binario sul sistema Ubuntu.
Prerequisiti
Per completare questo tutorial, avrai bisogno di un server Ubuntu 22.04. Questo server dovrebbe avere un utente non root con privilegi root/amministratore. Inoltre, ti consigliamo di abilitare il firewall "UFW" sul tuo sistema Ubuntu.
Installazione di Java OpenJDK
Prima di iniziare a installare WildFly, installerai prima Java OpenJDK sul tuo server Ubuntu. Al momento della stesura di questo articolo, l'ultima versione di WildFly richiedeva almeno Java v8. Il repository APT predefinito di Ubuntu fornisce Java v11, che è adatto per l'ultima versione dell'installazione di WildFly.
Esegui il comando "apt" di seguito per aggiornare l'indice del tuo pacchetto Ubuntu.
sudo apt update
Per installare Java OpenJDK, esegui il comando "apt install" di seguito. Ti verrà richiesto di confermare l'installazione, inserire Y e premere INVIO per continuare e inizierà l'installazione di Java OpenJDK.
sudo apt install default-jdk
Ora che Java OpenJDK è installato, controlla e verifica la versione di Java utilizzando il seguente comando. Dovresti vedere che Java OpenJDK 11 è installato sul tuo server Ubuntu 22.04.
java -version
Installazione di WildFly da file binari
Dopo aver installato Java, installerai WildFly manualmente sul tuo server Ubuntu. L'installazione manuale di WildFly richiede l'impostazione di un nuovo utente di sistema, il download del pacchetto binario WildFLy e l'impostazione della directory di configurazione e del servizio systemd per WildFly.
Per creare un nuovo utente di sistema, esegui il comando "useradd" di seguito.
Nell'esempio seguente, il nuovo utente di sistema verrà chiamato "wildfly" con la directory home di base "/opt/wildfly". Questa directory verrà utilizzata anche come directory di installazione principale per WildFly.
sudo useradd -r -d /opt/wildfly -s /usr/sbin/nologin wildfly
Prima di scaricare il pacchetto binario WildFly, esegui il comando seguente per creare una nuova variabile di ambiente temporanea "WILDFLY_RELEASE". Ciò assegnerà la variabile di ambiente "WILDFLY_RELEASE" con l'ultima versione della versione WildFly. Al momento in cui scrivo, l'ultima versione di WildFly è v26.x.
WILDFLY_RELEASE=$(curl -s https://api.github.com/repos/wildfly/wildfly/releases/latest|grep tag_name|cut -d '"' -f 4)
echo $WILDFLY_RELEASE
Per scaricare il pacchetto binario WildFly, esegui il comando "wget" di seguito. Dovresti vedere il nuovo file nella directory corrente.
wget https://github.com/wildfly/wildfly/releases/download/${WILDFLY_RELEASE}/wildfly-${WILDFLY_RELEASE}.tar.gz
Successivamente, estrai il pacchetto WildFLy utilizzando il comando "tar" riportato di seguito. Quindi, sposta la nuova directory WildFly estratta in "/opt/wildfly".
tar -xvf wildfly-${WILDFLY_RELEASE}.tar.gz
sudo mv wildfly-${WILDFLY_RELEASE} /opt/wildfly
Imposta la proprietà corretta e appropriata della directory di installazione di WldFly sull'utente "wildfly" utilizzando il comando seguente.
sudo chown -R wildfly:wildfly /opt/wildfly
Successivamente, crea una nuova directory di configurazione predefinita "/etc/wildfly" utilizzando il seguente comando. Quindi, copia al suo interno l'esempio del file di configurazione di WildFly.
sudo mkdir -p /etc/wildfly/
sudo cp sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
Modifica il file di configurazione predefinito di WildFly "/etc/wildfly/wildfly.conf" utilizzando il comando seguente.
sudo nano /etc/wildfly/wildfly.conf
Puoi modificare l'indirizzo "WILDFLY_BIND" con l'indirizzo IP del tuo server locale. Inoltre, in questa dimostrazione, eseguirai WildFly in modalità "standalone" con il file di configurazione "standalone.xml".
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=192.168.5.10
Salva e chiudi il file quando hai finito.
Successivamente, copia l'esempio dello script di avvio di WildFly "/opt/wildfly/docs/contrib/scripts/systemd/launch.sh" nella directory "/opt/wildfly/bin/". Quindi, copia il file del servizio systemd WildFly "/opt/wildfly/docs/contrib/scripts/systemd/wildfly.service" nella directory "/usr/lib/systemd/system/" .
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
sudo cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /usr/lib/systemd/system/
Inoltre, dovrai anche creare una nuova directory "/var/run/wildfly" che verrà utilizzata per archiviare il file PID (Process ID) del server WildFly. Inoltre, assicurati di modificare la proprietà corretta di quella directory nell'utente "wildfly".
sudo mkdir /var/run/wildfly/
sudo chown -R wildfly:wildfly /var/run/wildfly/
Ora esegui il comando "systemctl" di seguito per ricaricare il gestore systemd e applicare il nuovo file di servizio WildFly.
sudo systemctl daemon-reload
Successivamente, avvia e abilita il servizio "wildfly" utilizzando il seguente comando "systemctl". E il servizio "wildfly" sarà attivo e funzionante e verrà eseguito automaticamente all'avvio del sistema.
sudo systemctl start wildfly
sudo systemctl enable wildfly
Per controllare e verificare lo stato del servizio "wildfly", esegui il comando seguente. Dovresti vedere che il servizio "wildfly" è "abilitato" e lo stato corrente è "in esecuzione".
sudo systemctl status wildfly
Per impostazione predefinita, WildFly viene eseguito sulla porta TCP "8080". Devi aprire quella porta se hai il firewall "UFW" abilitato sul tuo server.
Esegui il comando "ufw" di seguito per aprire la porta TCP "8080" per WildFly. Quindi, controlla e verifica lo stato del firewall UFW. Dovresti vedere che è stata aggiunta la porta "8080".
sudo ufw allow 8080/tcp
sudo ufw status
Apri il tuo browser web e visita l'indirizzo IP del server con la porta "8080" (ad esempio, http:/192.168.5.10:8080/). Vedrai la pagina index.html predefinita di WildFly.
Configurazione dell'utente amministratore WildFly
L'amministrazione WildFly è disabilitata nell'installazione predefinita. In questa demo, abiliterai il dashboard di amministrazione di WildFly che ti consente di impostare la distribuzione dell'applicazione, la configurazione del runtime, il controllo degli accessi e altre impostazioni di WildFly.
Imposterai un nuovo utente amministratore per WildFly prima di iniziare a configurare e abilitare l'amministrazione WildFly.
Esegui lo script di aggiunta utente WildFly "/opt/wildfly/bin/add-user.sh" come utente "wildfly" di seguito.
sudo -u wildfly /opt/wildfly/bin/add-user.sh
Ora ti verrà richiesta la configurazione dell'utente amministratore di seguito:
- Inserisci "a" per impostare l'"utente di gestione" di WildFly.
- Inserisci il nome utente dell'amministratore WildFly. In questa demo utilizzeremo l'utente amministratore "alice".
- Inserisci la password per il nuovo utente amministratore e ripeti. Assicurati di utilizzare la password complessa come consigliato dallo script.
- Lascia la configurazione del gruppo come predefinita e premi INVIO.
- Inserisci "sì" per confermare le nuove configurazioni di amministrazione di WildFly.
- Infine, inserisci nuovamente "sì" per consentire al nuovo utente di essere utilizzato per identificare un processo WildFly oppure puoi semplicemente inserire "no" per queste impostazioni.
Abilitazione della console di amministrazione WildFly
Se hai creato l'utente amministratore di WildFly, ora configurerai la console di amministrazione di WildFly tramite il file di configurazione "/etc/wildfly/wildfly.conf".
Modifica il file di configurazione "/etc/wildfly/wildfly.conf" utilizzando il seguente comando.
sudo nano /etc/wildfly/wildfly.conf
Aggiungere la seguente configurazione al file. Ciò creerà una nuova variabile di ambiente per il servizio WildFly denominata "WILDFLY_CONSOLE_BIND", che eseguirà la console di amministrazione WildFly sull'indirizzo IP interno "192.168.5.10".
IP Address for WildFly Console
WILDFLY_CONSOLE_BIND=192.168.5.10
Salva e chiudi il file quando hai finito.
Successivamente, modifica lo script di avvio di WildFly "/opt/wildfly/bin/launch.sh" utilizzando il seguente comando.
sudo nano /opt/wildfly/bin/launch.sh
Modificare il comando di avvio come di seguito. Aggiungi l'opzione "-bmanagement $4" per abilitare la console di amministrazione WildFly.
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
Salva e chiudi il file quando hai finito.
Ora modifica il file del servizio systemd WildFly "/usr/lib/systemd/system/wildfly.service" utilizzando il seguente comando.
sudo nano /usr/lib/systemd/system/wildfly.service
Aggiungi la variabile di ambiente "$WILDFLY_CONSOLE_BIND" come opzione di comando aggiuntiva su "ExecStart" come segue.
ExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BIND
Salva e chiudi il file quando hai finito.
Dopo aver modificato il file del servizio systemd WildFly, esegui il comando "systemctl" di seguito per ricaricare il gestore systemd. Quindi, riavvia il servizio "wildfly" per applicare le nuove modifiche e abilitare la console di amministrazione.
sudo systemctl daemon-reload
sudo systemctl restart wildfly
Ora controlla e verifica il servizio "wildfly" utilizzando il comando "systemctl" riportato di seguito. E dovresti ottenere che il servizio "wildfly" sia "in funzione". Nello script di avvio "launch.sh" e "standalone.sh" vedrai opzioni aggiuntive per abilitare la console di amministrazione.
sudo systemctl status wildfly
L'amministrazione WildFly predefinita è in esecuzione sulla porta TCP "9990". Per abilitarne l'accesso, dovrai aggiungere la regola del firewall UFW.
Esegui il comando "ufw" riportato di seguito per aggiungere la regola del firewall UFW per l'apertura della porta della console di amministrazione WildFly "9990". Quindi, controlla e verifica lo stato del firewall UFW.
sudo ufw allow 9990/tcp
sudo ufw status
Vedrai un output simile allo screenshot seguente.
Infine, torna al tuo browser web e visita l'indirizzo IP del server seguito dalla porta "9990" (ad esempio: http://192.168.5.10:9990/). E ti verranno richiesti l'utente amministratore e la password di WildFly.
Inserisci l'utente amministratore e la password di WildFly, quindi fai clic sul pulsante "Accedi".
Se il tuo utente e la tua password sono corretti, vedrai la pagina della console di amministrazione di WildFly di seguito.
Distribuzione dell'applicazione su WildFly
Ora distribuirai l'applicazione di esempio "Hello World" su WildFly. È possibile distribuire un'applicazione dalla console di amministrazione WildFly o utilizzando la modalità dell'interfaccia della riga di comando.
Crea una nuova directory "/opt/testapp" e scarica l'applicazione di esempio "helloworld.war" utilizzando il comando "curl" riportato di seguito.
mkdir -p /opt/testapp/
curl --output /opt/testapp/helloworld.war https://raw.githubusercontent.com/aeimer/java-example-helloworld-war/master/dist/helloworld.war
Successivamente, esegui lo script "jboss-cli.sh" per connetterti all'amministrazione WildFly dalla riga di comando.
sudo -u wildfly /opt/wildfly/bin/jboss-cli.sh --connect
Dopo esserti connesso alla shell WildFly, esegui il comando seguente per distribuire l'applicazione di esempio "/opt/testapp/helloworld.war" a WildFly.
deploy /opt/testapp/helloworld.war
Infine, torna al tuo browser web e visita l'indirizzo IP del tuo server con il seguente percorso "/helloworld" (ad esempio: http://192.168.5.10:8080/helloworld/). Dovresti ottenere l'applicazione di esempio "helloworld.war".
Conclusione
Congratulazioni! Ora hai installato con successo WildFly sul server Ubuntu 22.04 utilizzando l'installazione manuale dal pacchetto binario. Hai anche creato l'utente amministratore per WildFly e abilitato la console di amministrazione basata sul Web per WildFly. Alla fine, hai anche imparato come distribuire un'applicazione su WildFly dall'interfaccia della riga di comando.