WildFly ist eine kostenlose, quelloffene und plattformübergreifende Laufzeitumgebung für Anwendungen, die in Java geschrieben und von Red Hat entwickelt wurde und mit der Sie großartige Anwendungen von einer einzigen IDE aus entwickeln können. Es ist leicht, schnell, flexibel und basiert auf steckbaren Subsystemen. Es läuft auf Windows- und Linux-Betriebssystemen und zielt darauf ab, Benutzern eine schnelle und stabile Java-Laufzeitumgebung bereitzustellen. Wildfly verfügt über eine Vielzahl von Funktionen, darunter schnelle, anpassbare Laufzeit, Skalierbarkeit, einheitliche Konfiguration und Verwaltung, gleichzeitiges Laden, schnelle Verknüpfung, Domänenverwaltung und vieles mehr.
In diesem Tutorial zeigen wir Ihnen die Schritte zum Installieren von Wildfly mit Nginx als Reverse-Proxy unter Debian 10.
Anforderungen
- Ein Server mit Debian 10.
- Ein Root-Passwort wird für Ihren Server eingerichtet.
Erste Schritte
Bevor Sie beginnen, müssen Sie Ihr System mit der neuesten Version aktualisieren. Sie können dies tun, indem Sie den folgenden Befehl ausführen:
apt-get update -y
apt-get upgrade -y
Sobald Ihr Server aktualisiert ist, starten Sie Ihren Server neu, um die Änderungen zu übernehmen.
Installieren Sie Java
WildFly erfordert die Installation von Java Version 8 auf Ihrem Server. Standardmäßig ist Java 8 nicht im Standard-Repository von Debian 10 verfügbar. Sie müssen also Java 8 von der offiziellen Website herunterladen.
Extrahieren Sie nach dem Herunterladen von Java 8 die Java-Quelle mit dem folgenden Befehl in das Verzeichnis /usr/lib/jvm:
mkdir /usr/lib/jvm/
tar -zxvf jdk-8u221-linux-x64.tar.gz -C /usr/lib/jvm/
Führen Sie als Nächstes den folgenden Befehl aus, um die Standard-Java-Version zu ändern:
update-alternatives --config java
Wählen Sie Java Version 8 und drücken Sie die Eingabetaste. Sie sollten die folgende Ausgabe sehen:
Es gibt 2 Möglichkeiten für die Alternative Java (bereitstellen von /usr/bin/java). Auswahlpfad-Prioritätsstatus ---------------------------------------------- --------------* 0 /usr/lib/jvm/java-11-openjdk-amd64/bin/java 1111 automatischer Modus 1 /usr/lib/jvm/java-11-openjdk -amd64/bin/java 1111 manual mode 2 /usr/lib/jvm/jdk1.8.0_221/bin/java 1 manual modeDrücken Sie, um die aktuelle Auswahl beizubehalten[*], oder geben Sie die Auswahlnummer ein:2update-alternatives:using /usr/lib/jvm/jdk1.8.0_221/bin/java, um /usr/bin/java (java) im manuellen Modus bereitzustellen
Überprüfen Sie als Nächstes die Java-Version mit dem folgenden Befehl:
Java-Version
Sie sollten die folgende Ausgabe erhalten:
Java-Version „1.8.0_221“Java(TM) SE Runtime Environment (Build 1.8.0_221-b11)Java HotSpot(TM) 64-Bit Server VM (Build 25.221-b11, Mixed Mode)
Wildfly installieren
Zuerst müssen Sie einen Benutzer und eine Gruppe für Wildfly erstellen. Sie können es mit dem folgenden Befehl erstellen:
groupadd -r wildfly
useradd -r -g wildfly -d /opt/wildfly -s /sbin/nologin wildfly
Laden Sie als Nächstes die neueste Version von Wildfly mit dem folgenden Befehl herunter:
wget https://download.jboss.org/wildfly/17.0.1.Final/wildfly-17.0.1.Final.zip
Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
Wildfly-17.0.1.Final.zip entpacken
Als nächstes kopieren Sie das extrahierte Verzeichnis mit dem folgenden Befehl nach /opt/:
cp -r wildfly-17.0.1.Final /opt/wildfly
Ändern Sie als Nächstes den Eigentümer des Wildfly-Verzeichnisses wie unten gezeigt in Wildfly-Benutzer:
chown -RH wildfly:wildfly /opt/wildfly
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Wildfly konfigurieren
Als nächstes müssen Sie die notwendigen Dateien kopieren, um WildFly zu konfigurieren.
Kopieren Sie zuerst die WildFly-Konfigurationsdatei in das Verzeichnis /etc/wildfly:
mkdir /etc/wildfly
cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.conf /etc/wildfly/
Kopieren Sie als Nächstes die Datei launch.sh mit dem folgenden Befehl in das Verzeichnis /opt/wildfly/bin/:
cp /opt/wildfly/docs/contrib/scripts/systemd/launch.sh /opt/wildfly/bin/
Geben Sie als Nächstes der Datei launch.sh die Ausführungsberechtigung:
sh -c 'chmod +x /opt/wildfly/bin/*.sh'
Als nächstes kopieren Sie die Unit-Datei von Wildfly systemd in das Verzeichnis /etc/systemd/system/:
cp /opt/wildfly/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/
Als nächstes laden Sie den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den WildFly-Dienst und aktivieren Sie ihn mit dem folgenden Befehl, damit er beim Booten startet:
systemctl start wildfly
systemctl enable wildfly
Sie können jetzt den Status des Wildfly-Dienstes mit dem folgenden Befehl überprüfen:
systemctl status wildfly
Sie sollten die folgende Ausgabe erhalten:
WildFly-Authentifizierung konfigurieren
Als Nächstes müssen Sie einen Administratorbenutzer für Wildfly erstellen, um auf die WildFly-Verwaltungskonsole zugreifen zu können. Sie können es mit dem folgenden Befehl erstellen:
/opt/wildfly/bin/add-user.sh
Sie sollten die folgende Ausgabe sehen:
Welche Art von Benutzer möchten Sie hinzufügen? a) Verwaltungsbenutzer (mgmt-users.properties) b) Anwendungsbenutzer (application-users.properties)(a):a
Geben Sie a ein und drücken Sie Enter um einen Verwaltungsbenutzer zu erstellen. Während der Benutzererstellung müssen Sie den Benutzernamen, das Passwort und den Gruppennamen wie unten gezeigt angeben:
Geben Sie die Details des neuen Benutzers ein, der hinzugefügt werden soll.Verwenden Sie den Realm „ManagementRealm“, wie aus den vorhandenen Eigenschaftsdateien ermittelt.Benutzername:wildflyadminPasswortempfehlungen sind unten aufgeführt. Um diese Einschränkungen zu ändern, bearbeiten Sie die Konfigurationsdatei add-user.properties. - Das Passwort sollte sich vom Benutzernamen unterscheiden - Das Passwort sollte keiner der folgenden eingeschränkten Werte sein {root, admin, administrator} - Das Passwort sollte mindestens 8 Zeichen, 1 Buchstabe(n), 1 Ziffer(n) enthalten , 1 nicht alphanumerisches ZeichenPasswort :Passwort erneut eingeben :Zu welchen Gruppen soll dieser Benutzer gehören? (Bitte geben Sie eine durch Kommas getrennte Liste ein oder lassen Sie das Feld leer, wenn Sie keine haben)[ ]:Im Begriff, den Benutzer „wildflyadmin“ für den Bereich „ManagementRealm“ hinzuzufügen. Ist dies richtig, ja/nein? yesBenutzer ‚wildflyadmin‘ zur Datei ‚/opt/wildfly/standalone/configuration/mgmt-users.properties‘ hinzugefügt ‚Benutzer ‚wildflyadmin‘ zur Datei ‚/opt/wildfly/domain/configuration/mgmt-users.properties‘ hinzugefügt ‚Benutzer ‚wildflyadmin‘ hinzugefügt ' mit Gruppen zur Datei '/opt/wildfly/standalone/configuration/mgmt-groups.properties'Hinzugefügter Benutzer 'wildflyadmin' mit Gruppen zur Datei '/opt/wildfly/domain/configuration/mgmt-groups.properties'Ist dieser neue Benutzer wird für einen AS-Prozess verwendet, um eine Verbindung zu einem anderen AS-Prozess herzustellen? z.B. für einen Slave-Host-Controller, der sich mit dem Master verbindet, oder für eine Remoting-Verbindung für Server-zu-Server-EJB-Aufrufe. ja/nein? yesUm den Benutzer darzustellen, fügen Sie Folgendes zur Definition der Serveridentitäten hinzu:
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
WildFly so konfigurieren, dass es vom Remote-System aus zugänglich ist
Standardmäßig ist Wildfly nur vom lokalen System aus zugänglich. Sie müssen es also für den Zugriff vom Remote-System konfigurieren. Sie können dies tun, indem Sie die Datei /etc/wildfly/wildfly.conf:
bearbeitennano /etc/wildfly/wildfly.conf
Fügen Sie am Ende der Datei die folgende Zeile hinzu:
WILDFLY_CONSOLE_BIND=0.0.0.0
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Öffnen Sie dann die Datei /opt/wildfly/bin/launch.sh wie unten gezeigt:
nano /opt/wildfly/bin/launch.sh
Ändern Sie die Datei wie unten gezeigt:
if [ "x$WILDFLY_HOME" ="x" ]; dann WILDFLY_HOME="/opt/wildfly"fiif [[ "$1" =="domain" ]]; dann $WILDFLY_HOME/bin/domain.sh -c $2 -b $3 -bmanagement $4else $WILDFLY_HOME/bin/standalone.sh -c $2 -b $3 -bmanagement $4fi
Speichern und schließen Sie die Datei. Öffnen Sie dann die Datei /etc/systemd/system/wildfly.service.
nano /etc/systemd/system/wildfly.service
Ändern Sie die Datei wie unten gezeigt:
[Unit]Description=Die WildFly-Anwendung ServerAfter=syslog.target network.targetBefore=httpd.service[Service]Environment=LAUNCH_JBOSS_IN_BACKGROUND=1EnvironmentFile=-/etc/wildfly/wildfly.confUser=wildflyLimitNOFILE=102642PIDFile=/var/run /wildfly/wildfly.pidExecStart=/opt/wildfly/bin/launch.sh $WILDFLY_MODE $WILDFLY_CONFIG $WILDFLY_BIND $WILDFLY_CONSOLE_BINDStandardOutput=null[Install]WantedBy=multi-user.target
Speicher die Datei. Erstellen Sie dann das Verzeichnis /var/run/wildfly und legen Sie die richtigen Berechtigungen fest
mkdir /var/run/wildfly/
chown wildfly:wildfly /var/run/wildfly/
Laden Sie schließlich den systemd-Daemon neu und starten Sie den Wildfly-Dienst neu, um die Änderungen zu übernehmen:
systemctl daemon-reload
systemctl restart wildfly
Sobald Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Zugriff auf Wildfly
Wildfly ist jetzt installiert und für den Zugriff vom Remote-System konfiguriert. Standardmäßig überwacht die Wildfly-Verwaltungskonsole Port 9990. Sie können darauf zugreifen, indem Sie die URL http://192.168.0.4:9990 besuchen . Sie werden auf die folgende Seite weitergeleitet:
Geben Sie nun Ihren Admin-Benutzernamen und Ihr Passwort ein und klicken Sie auf Signieren in Taste. Sie sollten die Wildfly-Verwaltungskonsole auf dem folgenden Bildschirm sehen:
Sie können auch auf die Wildfly-Anwendung zugreifen, indem Sie die URL http://192.168.0.4:8080 aufrufen . Sie sollten die folgende Seite sehen:
Konfigurieren Sie Nginx als Reverse-Proxy für Wildfly
Als Nächstes müssen Sie Nginx als Reverse-Proxy für Proxy-Anforderungen konfigurieren, die auf Port 80 zu 8080 kommen.
Installieren Sie zuerst Nginx mit dem folgenden Befehl:
apt-get install nginx -y
Erstellen Sie nach der Installation von Nginx mit dem folgenden Befehl eine neue virtuelle Hostdatei für Nginx:
nano /etc/nginx/sites-available/wildfly.conf
Fügen Sie die folgenden Zeilen hinzu:
upstream wildfly { server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;}server { listen 80; Servername 192.168.0.4; location / {proxy_set_header X-Forwarded-Host $host; proxy_set_header X-Forwarded-Server $host; Proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; Proxy_pass http://wildfly/; }}
Speichern und schließen Sie die Datei, wenn Sie fertig sind. Überprüfen Sie dann Nginx mit dem folgenden Befehl auf Syntaxfehler:
nginx -t
Sie sollten die folgende Ausgabe erhalten:
nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich
Aktivieren Sie als Nächstes den virtuellen Nginx-Host und starten Sie Nginx mit dem folgenden Befehl neu:
ln -s /etc/nginx/sites-available/wildfly.conf /etc/nginx/sites-enabled/
systemctl restart nginx
Sie können jetzt auf die Wildfly-Anwendung zugreifen, ohne den Port 8080 anzugeben.
Das ist es. Sie haben Wildfly mit Nginx erfolgreich als Reverse-Proxy auf Debian 10 installiert und konfiguriert. Bei Fragen können Sie mich gerne kontaktieren.