Tomcat ist ein kostenloser, leichtgewichtiger Open-Source-Anwendungsserver, der zum Bereitstellen von Java-basierten Anwendungen verwendet wird. Es kann als eigenständiger Server verwendet oder mit anderen Servern wie Apache und Nginx kombiniert werden. Es bietet die erweiterte Funktionalität zur Interaktion mit Java-Servlets und implementiert auch mehrere technische Spezifikationen der Java-Plattform. Derzeit ist Tomcat einer der am weitesten verbreiteten Anwendungsserver für Java.
In diesem Tutorial zeige ich Ihnen, wie Sie Tomcat 9 mit Nginx auf Debian 10 installieren.
Voraussetzungen
- Ein Server mit Debian 10.
- Ein gültiger Domainname, auf den Ihre Server-IP verweist.
- Auf Ihrem Server ist ein Root-Passwort konfiguriert.
Erste Schritte
Bevor Sie beginnen, ist es eine gute Idee, Ihren APT-Cache auf die neueste Version zu aktualisieren. Sie können es aktualisieren, indem Sie den folgenden Befehl ausführen:
apt-get update -y
Sobald Ihr Systempaket-Cache auf dem neuesten Stand ist, können Sie mit dem nächsten Schritt fortfahren.
Installieren Sie Java
Tomcat ist eine Java-basierte Anwendung, daher muss Java auf Ihrem Server installiert sein. Wenn es nicht installiert ist, können Sie es mit dem folgenden Befehl installieren:
apt-get install default-jdk -y
Sobald Java installiert ist, können Sie die Java-Version mit dem folgenden Befehl überprüfen:
java --version
Sie sollten die folgende Ausgabe erhalten:
openjdk 11.0.9.1 2020-11-04OpenJDK Runtime Environment (Build 11.0.9.1+1-post-Debian-1deb10u2)OpenJDK 64-Bit Server VM (build 11.0.9.1+1-post-Debian-1deb10u2, gemischter Modus , teilen)
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Tomcat installieren
Zuerst müssen Sie einen dedizierten Benutzer erstellen, um den Tomcat-Server auszuführen. Sie können es mit dem folgenden Befehl erstellen:
useradd -m -U -d /opt/tomcat -s /bin/false Tomcat
Laden Sie als Nächstes die neueste Version von Tomcat mit dem folgenden Befehl herunter:
wget https://www-eu.apache.org/dist/tomcat/tomcat-9/v9.0.45/bin/apache-tomcat-9.0.45.tar.gz
Sobald der Download abgeschlossen ist, extrahieren Sie die heruntergeladene Datei mit dem folgenden Befehl:
tar -xvzf apache-tomcat-9.0.45.tar.gz
Verschieben Sie als Nächstes das extrahierte Verzeichnis mit dem folgenden Befehl nach /opt:
mv apache-tomcat-9.0.45 /opt/tomcat/tomcat
Legen Sie als Nächstes die richtige Berechtigung und den Besitz mit dem folgenden Befehl fest:
chown -R Tomcat:Tomcat /opt/Tomcat/Tomcat
chmod -R 755 /opt/Tomcat/Tomcat
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Erstellen Sie eine Systemd-Dienstdatei für Tomcat
Als Nächstes müssen Sie eine systemd-Dienstdatei erstellen, um den Tomcat-Dienst zu verwalten. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/systemd/system/tomcat.service
Fügen Sie die folgenden Zeilen hinzu:
[Unit]Description=Tomcat 9.0 Servlet containerAfter=network.target[Service]Type=forkingUser=tomcatGroup=tomcatEnvironment="JAVA_HOME=/usr/lib/jvm/default-java"Environment="JAVA_OPTS=-Djava.security .egd=file:///dev/urandom"Environment="CATALINA_BASE=/opt/tomcat/tomcat"Environment="CATALINA_HOME=/opt/tomcat/tomcat"Environment="CATALINA_PID=/opt/tomcat/tomcat/temp/ tomcat.pid"Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"ExecStart=/opt/tomcat/tomcat/bin/startup.shExecStop=/opt/tomcat/tomcat/bin/shutdown.sh[Install ]WantedBy=multi-user.target
Speichern und schließen Sie die Datei und laden Sie dann den systemd-Daemon mit dem folgenden Befehl neu:
systemctl daemon-reload
Starten Sie als Nächstes den Tomcat-Dienst und ermöglichen Sie ihm, beim Systemneustart mit dem folgenden Befehl zu starten:
systemctl start Tomcat
systemctl enable Tomcat
Sie können den Status von Tomcat auch mit dem folgenden Befehl überprüfen:
Systemctl-Status-Tomcat
Sie sollten die folgende Ausgabe erhalten:
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Tomcat-Webschnittstelle konfigurieren
Als Nächstes müssen Sie einen Benutzer für den Zugriff auf die Tomcat-Weboberfläche definieren. Sie können es mit der Datei tomcat-users.xml definieren:
nano /opt/tomcat/tomcat/conf/tomcat-users.xml
Suchen Sie den Abschnitt
Speichern und schließen Sie die Datei, wenn Sie fertig sind.
Standardmäßig ist die Tomcat-Weboberfläche so konfiguriert, dass sie nur vom lokalen Host aus zugreift. Sie müssen es also für den externen Zugriff konfigurieren.
Bearbeiten Sie für die Manager-App die folgende Zeile:
nano /opt/tomcat/tomcat/webapps/manager/META-INF/context.xml
Bearbeiten Sie für die Host Manager-App die folgende Datei:
nano /opt/tomcat/tomcat/webapps/host-manager/META-INF/context.xml
Entfernen Sie die folgende Zeile:
Speichern und schließen Sie die Datei und starten Sie dann den Tomcat-Dienst neu, um die Änderungen zu übernehmen:
systemctl startet Tomcat neu
Wenn Sie fertig sind, können Sie mit dem nächsten Schritt fortfahren.
Nginx für Tomcat konfigurieren
Als nächstes müssen Sie Nginx als Reverse-Proxy für Tomcat installieren und konfigurieren. Installieren Sie zuerst das Nginx-Paket mit dem folgenden Befehl:
apt-get install nginx -y
Nachdem Nginx installiert wurde, müssen Sie eine neue virtuelle Nginx-Host-Konfigurationsdatei für Tomcat erstellen. Sie können es mit dem folgenden Befehl erstellen:
nano /etc/nginx/conf.d/tomcat.conf
Fügen Sie die folgenden Zeilen hinzu:
server {listen 80; server_name tomcat.example.com; root /opt/tomcat/tomcat/webapps/; 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://127.0.0.1:8080/; }}
Speichern und schließen Sie die Datei und überprüfen Sie dann Nginx auf Syntaxfehler:
nginx -t
Sie sollten die folgende Ausgabe sehen:
nginx:Die Syntax der Konfigurationsdatei /etc/nginx/nginx.conf ist oknginx:Der Test der Konfigurationsdatei /etc/nginx/nginx.conf ist erfolgreich
Starten Sie als Nächstes den Nginx-Dienst neu, um die Änderungen zu übernehmen:
systemctl startet nginx neu
Überprüfen Sie als Nächstes den Status des Nginx-Dienstes mit dem folgenden Befehl:
systemctl status nginx
Sie sollten die folgende Ausgabe sehen:
An diesem Punkt ist Nginx für den Zugriff auf Tomcat konfiguriert. Sie können jetzt mit dem nächsten Schritt fortfahren.
Greifen Sie auf die Tomcat-Web-Benutzeroberfläche zu
Öffnen Sie nun Ihren Webbrowser und greifen Sie über die URL http://tomcat.example.com auf die Tomcat-Webbenutzeroberfläche zu . Sie sollten die folgende Seite sehen:
Klicken Sie auf den Manager App , sollten Sie die folgende Seite sehen:
Geben Sie Ihren Administrator-Benutzernamen und Ihr Passwort für die Manager-App ein und klicken Sie auf Anmelden Taste. Sie sollten die folgende Seite sehen:
Sie können auch auf den Host-Manager klicken um wie unten gezeigt auf die Host Manager App zuzugreifen:
Schlussfolgerung
Herzliche Glückwünsche! Sie haben Tomcat mit Nginx erfolgreich als Reverse-Proxy auf Debian 10 installiert. Sie können Ihre Java-Anwendung jetzt einfach mit Tomcat bereitstellen. Fühlen Sie sich frei, mich zu fragen, wenn Sie irgendwelche Fragen haben.