Linux (CentOS7) installiert Tomcat und legt Tomcat als Startobjekt fest (am Beispiel von Tomcat8).

Linux (CentOS7) installiert Tomcat und legt Tomcat als Startobjekt fest (am Beispiel von Tomcat8).

Installieren Sie Tomcat

Laden Sie das komprimierte Tomcat-Paket herunter

Tomcat gibt es in den Versionen Tomcat7, Tomcat8 und Tomcat9. Derzeit wird Tomcat8 häufiger in Unternehmen verwendet, daher ist Tomcat8 hier aufgeführt.

Rufen Sie die Tomcat8-Download-Website auf: Tomcat8-Download-Website https://tomcat.apache.org/download-80.cgi

Klicken Sie links unter Download auf die entsprechende Version. Hier habe ich apache-tomcat-8.5.47.tar.gz heruntergeladen, das komprimierte Paket für die Linux-Umgebung.

Tomcat hat drei Hauptinstallationsversionen

  • tar.gz: komprimiertes Paket in Linux-Umgebung, keine Installation erforderlich
  • Windows.zip: Komprimiertes Windows-Paket, keine Installation erforderlich, einfach entpacken und verwenden. Achten Sie gleichzeitig darauf, das entsprechende komprimierte Paket herunterzuladen, je nachdem, ob Ihr Computer ein 64-Bit- oder ein 32-Bit-System ist
  • Windows Service Installer: Windows-Installationspaket, anwendbar sowohl auf 32-Bit- als auch auf 64-Bit-Versionen von Windows

Installieren Sie Tomcat

Legen Sie die heruntergeladene apache-tomcat-8.5.47.tar.gz in das angegebene Verzeichnis. Ich habe sie in /usr/local/tomcat abgelegt, wie in der folgenden Abbildung gezeigt

Wechseln Sie in /usr/local/tomcat und entpacken Sie das komprimierte Tomcat-Paket.

# Wechseln Sie in das Verzeichnis /usr/local/tomcat cd /usr/local/tomcat
# Entpacken Sie das komprimierte Tomcat-Paket tar -zxvf apache-tomcat-8.5.47.tar.gz

Starten Sie Tomcat

Gehen Sie in das Bin-Verzeichnis von Tomcat und starten Sie Tomcat

# Gehen Sie in das Bin-Verzeichnis von Tomcat und starten Sie Tomcat
cd apache-tomcat-8.5.47/bin/
# Tomcat starten
./startup.sh

Überprüfen Sie, ob Tomcat erfolgreich gestartet wurde

# Überprüfen Sie, ob Tomcat erfolgreich gestartet wurde. Führen Sie ps -ef | grep tomcat aus.
# 如果输出如下,说明Tomcat安装成功root 2381 1 11 22:18 pts/0 00:00:02 /usr/local/jdk1.8.0_152/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/apache-tomcat-8.5.47/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoaderLogManager -Djdk.tls.ephemeralDHKeySize=2048 -Djava.protocol.handler.pkgs=org.apache.catalina.webresources -Dorg.apache.catalina.security.SecurityListener.UMASK=0027 -Dignore.endorsed.dirs= -classpath /usr/local/tomcat/apache-tomcat-8.5.47/bin/bootstrap.jar:/usr/local/tomcat/apache-tomcat-8.5.47/bin/tomcat-juli.jar -Dcatalina.base=/usr/local/tomcat/apache-tomcat-8.5.47 -Dcatalina.home=/usr/local/tomcat/apache-tomcat-8.5.47 -Djava.io.tmpdir=/usr/local/tomcat/apache-tomcat-8.5.47/temp org.apache.catalina.startup.Bootstrap start
root 2513 29060 0 22:18 pts/0 00:00:00 grep --color=auto tomcat

Verwenden Sie den Browser, um auf Tomcat zuzugreifen. Die Adresse lautet Linux IP: 8080. Mein IP-Port hier ist http://47.106.106.158:8080/. Wie in der folgenden Abbildung gezeigt, ist Tomcat erfolgreich in der Linux-Umgebung (CentOS7) installiert und gestartet. Geben Sie sich selbst einen Daumen hoch

Hinweis: Öffnen Sie Port 8080 oder schließen Sie die Firewall

Zusätzlich: Öffnen Sie Port 8080 oder schließen Sie die Firewall. Wenn es sich um Alibaba Cloud handelt, können Sie den offenen Port nur in der Alibaba Cloud-Konsole konfigurieren.

# Öffnen Sie Port 8080 Firewall-cmd --zone=public --add-port=8080/tcp --permanent
# Prüfen Sie, ob Portnummer 8080 aktiviert ist firewall-cmd --query-port=8080/tcp
# Starten Sie die Firewall neu firewall-cmd --reload
# Zeigen Sie die Liste der offenen Ports an firewall-cmd --list-port
# Bedeutung des Befehls --zone #Gültigkeitsbereich --add-port=8080/tcp #Port hinzufügen, Format: Port/Kommunikationsprotokoll --permanent #Permanente Wirkung, ohne diesen Parameter ist der Befehl nach einem Neustart ungültig #Firewall stoppen systemctl stop firewalld.service #Firewall stoppen
systemctl disable firewalld.service #Firewall-Start deaktivieren

Tomcat als Startobjekt festlegen

Starten Sie Tomcat wie oben beschrieben. Wenn unsere virtuelle Maschine oder unser Server heruntergefahren wird, wird Tomcat nach dem Neustart des Servers heruntergefahren. Wir hoffen jedoch, dass Tomcat nach dem Neustart der virtuellen Maschine oder des Servers von selbst starten kann, daher müssen wir Tomcat als Startobjekt festlegen

Erstellen Sie die Datei setenv.sh und fügen Sie Startparameter für Tomcat hinzu

Wenn catalina.sh ausgeführt wird, ruft es setenv.sh im selben Pfad auf, um zusätzliche Umgebungsvariablen festzulegen. Erstellen Sie daher eine setenv.sh-Datei im Pfad /usr/local/tomcat/apache-tomcat-8.5.47/bin mit folgendem Inhalt:

# Tomcats PID-Datei CATALINA_PID="$CATALINA_BASE/tomcat.pid" festlegen
# JVM-Optionen hinzufügen JAVA_OPTS="-server -XX:PermSize=256M -XX:MaxPermSize=1024m -Xms512M -Xmx1024M -XX:MaxNewSize=256m"

Fügen Sie JAVA_HOME und JRE_HOME am Anfang der Datei /usr/local/tomcat/apache-tomcat-8.5.47/bin/catalina.sh hinzu, wobei /usr/local/jdk1.8.0_152 das Installationsverzeichnis von jdk ist

exportiere JAVA_HOME=/usr/local/jdk1.8.0_152
exportiere JRE_HOME=/usr/local/jdk1.8.0_152/jre

Wenn JAVA_HOME und JRE_HOME in catalina.sh nicht konfiguriert sind, wird der folgende Fehler gemeldet

[root@JourWon ~]# systemctl status tomcat
● tomcat.service – Tomcat
 Geladen: geladen (/usr/lib/systemd/system/tomcat.service; aktiviert; Vendor-Vorgabe: deaktiviert)
 Aktiv: Fehlgeschlagen (Ergebnis: Exitcode) seit Montag, 21.10.2019, 19:54:54 CST; vor 6 Sek.
 Prozess: 8746 ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh (Code=beendet, Status=1/FEHLER)

21. Okt 19:54:54 JourWon systemd[1]: Tomcat wird gestartet...
Okt 21 19:54:54 JourWon startup.sh[8746]: Weder das JAVA_HOME noch das JRE_...d
Okt 21 19:54:54 JourWon startup.sh[8746]: Mindestens eine dieser Umgebungen ...m
Okt 21 19:54:54 JourWon systemd[1]: tomcat.service: Kontrollprozess beendet,...=1
21. Okt 19:54:54 JourWon systemd[1]: Tomcat konnte nicht gestartet werden.
Okt 21 19:54:54 JourWon systemd[1]: Die Einheit tomcat.service ist in den Fehlerzustand gewechselt.
21. Okt 19:54:54 JourWon systemd[1]: tomcat.service ist fehlgeschlagen.
Hinweis: Einige Zeilen wurden mit Auslassungspunkten versehen. Verwenden Sie -l, um sie vollständig anzuzeigen.

Fügen Sie die Datei tomcat.service im Pfad /usr/lib/systemd/system mit folgendem Inhalt hinzu:

[Einheit]
Beschreibung=Tomcat
Nach=Netzwerk.Ziel Remote-FS.Ziel NSS-Lookup.Ziel
[Service]
Typ=Forking
ZeitüberschreitungSec=0
PIDFile=/usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid
ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh
ExecReload=/bin/kill -s HUP $MAINPID
ExecStop=/bin/kill -s QUIT $MAINPID
PrivateTmp=true
[Installieren]
WantedBy=Mehrbenutzer.Ziel

Darüber hinaus müssen Sie nach der Änderung der Servicedatei den Befehl sy stemctl daemon-reload aufrufen, um sie neu zu laden.

Der Zweck der Konfiguration von TimeoutSec=0 besteht darin, das System daran zu hindern, das Tomcat-Starttimeout beim Booten zu verarbeiten, sodass Tomcat nicht beendet wird, wenn es zu lange dauert. Wenn es nicht konfiguriert ist, können die folgenden Situationen auftreten

21. Okt 20:26:37 JourWon startup.sh[1634]: Beim Start wurde eine vorhandene PID-Datei gefunden.
21. Okt 20:26:37 JourWon startup.sh[1634]: Entfernen/Löschen einer veralteten PID-Datei.
21. Okt 20:26:37 JourWon startup.sh[1634]: Tomcat gestartet.
21. Okt 20:26:37 JourWon systemd[1]: PID-Datei /usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid nach dem Start (noch?) nicht lesbar.
Okt 21 20:26:38 JourWon polkitd[464]: Nicht registrierter Authentifizierungsagent für unix-process:1628:19013 (Systembusname: 1.23, Objektpfad /org/freedesktop/PolicyKit1/AuthenticationAgent, lokal
21. Okt 20:28:07 JourWon systemd[1]: Beim Starten des tomcat.service ist eine Zeitüberschreitung aufgetreten. Wird beendet.
21. Okt 20:28:07 JourWon systemd[1]: Tomcat konnte nicht gestartet werden.

Tomcat zum Startprogramm hinzufügen

systemctl enable tomcat.service

Starten Sie den Server neu

reboot

Überprüfen Sie nach der Wiederherstellung der Verbindung den Dienststatus

[root@JourWon ~]# systemctl status tomcat
● tomcat.service – Tomcat
 Geladen: geladen (/usr/lib/systemd/system/tomcat.service; aktiviert; Vendor-Vorgabe: deaktiviert)
 Aktiv: Aktivierung (Start) seit Montag, 21.10.2019, 20:12:19 CST; vor 8 Sek.
 Prozess: 9244 ExecStart=/usr/local/tomcat/apache-tomcat-8.5.47/bin/startup.sh (Code=beendet, Status=0/ERFOLGREICH)
 CGroup: /system.slice/tomcat.service
   └─9255 /usr/local/jdk1.8.0_152/jre/bin/java -Djava.util.logging.config.file=/usr/local/tomcat/apache-tomcat-8.5.47/conf/logging.properties -Djava.util.logging.manager=org.apac...

21. Okt 20:12:19 JourWon systemd[1]: Tomcat wird gestartet...
21. Okt 20:12:19 JourWon startup.sh[9244]: Beim Start wurde eine vorhandene PID-Datei gefunden.
21. Okt. 20:12:19 JourWon startup.sh[9244]: Entfernen/Löschen einer veralteten PID-Datei.
21. Okt 20:12:19 JourWon startup.sh[9244]: Tomcat gestartet.
21. Okt 20:12:19 JourWon systemd[1]: PID-Datei /usr/local/tomcat/apache-tomcat-8.5.47/tomcat.pid nach dem Start (noch?) nicht lesbar.

Zeigen Sie den Befehl „Startup-Liste“ an

systemctl list-unit-files | grep enabled

Überprüfen Sie, ob Tomcat als Startobjekt festgelegt ist. Wenn es als aktiviert angezeigt wird, bedeutet dies, dass die Festlegung erfolgreich war.

Parameter Beschreibung

  • statisch: Gibt an, dass der Dienst mit anderen Diensten verknüpft ist und der Startstatus des Dienstes nicht separat festgelegt werden kann
  • deaktiviert: zeigt an, dass der Start verboten ist
  • aktiviert: zeigt an, dass das System starten darf
[root@JourWon ~]# systemctl list-unit-files | grep tomcat
tomcat.service aktiviert

Zusammenfassen

Oben habe ich Ihnen die Installation von Tomcat unter Linux (CentOS7) und das Festlegen von Tomcat als Startobjekt (am Beispiel von Tomcat8) vorgestellt. Ich hoffe, es wird Ihnen helfen. Wenn Sie Fragen haben, hinterlassen Sie mir bitte eine Nachricht und ich werde Ihnen rechtzeitig antworten. Ich möchte auch allen für ihre Unterstützung der Website 123WORDPRESS.COM danken!
Wenn Sie diesen Artikel hilfreich finden, können Sie ihn gerne abdrucken und dabei bitte die Quelle angeben. Vielen Dank!

Das könnte Sie auch interessieren:
  • Alibaba Cloud Server Linux-System erstellt Tomcat zur Bereitstellung von Webprojekten
  • Detaillierte Schritte zur Installation von JDK und Tomcat auf einem Linux-Cloud-Server (empfohlen)
  • Tutorial zur Installation und Konfiguration von Tomcat auf Alibaba Cloud Server und zum Hinzufügen externer Netzwerkzugriffsports
  • Installation von Tomcat9 und Bereitstellung von Webprojekten unter Linux CentOS
  • CentOS 6 konfiguriert Tomcat8 zum Starten des Skripts
  • Detailliertes Tutorial zur Installation von Tomcat8.5 in einer Centos8.2-Cloud-Serverumgebung

<<:  Detaillierte Schritte zum Speichern von Emoji-Ausdrücken in MySQL

>>:  WeChat-Miniprogramm zur Implementierung elektronischer Signaturen

Artikel empfehlen

Detaillierte Erklärung der Funktionsweise der Node.js-Middleware

Inhaltsverzeichnis Was ist Express-Middleware? Vo...

So vergleichen Sie zwei Datenbanktabellenstrukturen in MySQL

Während des Entwicklungs- und Debugging-Prozesses...

Zusammenfassung der für MySQL erforderlichen allgemeinen Kenntnisse

Inhaltsverzeichnis Primärschlüsseleinschränkung E...

Einführung und Verwendung des Javascript-Generators

Was ist ein Generator? Ein Generator ist ein Code...

Detaillierte Erklärung zum MySQL-Datenarchivierungstool mysql_archiver

Inhaltsverzeichnis I. Überblick 2. pt-archiver Ha...

Lösung für das Jitter-Problem beim CSS3-Transformationsübergang

transform: scale(); Skalierung verursacht Jitter ...

So verwenden Sie Nginx als Proxy-Cache

Der Zweck der Cache-Verwendung besteht darin, den...

Kennen Sie den Unterschied zwischen leerem Wert und Nullwert in MySQL

Vorwort Kürzlich habe ich festgestellt, dass die ...

Einführung in die Containerfunktion of() in der Linux-Kernel-Programmierung

Vorwort Bei der Linux-Kernel-Programmierung werde...