In diesem Tutorial erfahren Sie, wie Sie den Apache Tomcat 8-Anwendungscontainer auf RHEL 8 / CentOS 8 installieren. Wir verwenden das ZIP-Paket, das von der Apache Tomcat-Website heruntergeladen werden kann. Da dieses Paket das Einrichten der Umgebung nicht übernimmt, erstellen wir es über die Befehlszeile.
In diesem Tutorial lernen Sie:
- So installieren Sie Apache Tomcat aus einer ZIP-Datei
- So erstellen Sie die Umgebung für den Tomcat-Server von der Befehlszeile aus
- So fügen Sie eine grundlegende Servicedatei zu systemd hinzu
- So aktivieren Sie den Autostart, starten und stoppen Sie den Tomcat-Server
- So prüfen Sie, ob Tomcat erreichbar ist
Beispielseite, die von Apache Tomcat bereitgestellt wird. Softwareanforderungen und verwendete Konventionen
| Kategorie | Anforderungen, Konventionen oder verwendete Softwareversion |
|---|---|
| System | RHEL 8 / CentOS 8 |
| Software | Apache Tomcat 8 |
| Andere | Privilegierter Zugriff auf Ihr Linux-System als root oder über sudo Befehl. |
| Konventionen | # – erfordert, dass bestimmte Linux-Befehle mit Root-Rechten ausgeführt werden, entweder direkt als Root-Benutzer oder durch Verwendung von sudo Befehl$ – erfordert, dass bestimmte Linux-Befehle als normaler, nicht privilegierter Benutzer ausgeführt werden |
Schritt-für-Schritt-Anleitung zur Installation von Apache Tomcat unter Linux Redhat 8
Wir werden einen Tomcat-Server nicht von einem rpm installieren Paket, sondern ein zip Datei, die wir von der offiziellen Website herunterladen werden. Daher müssen der Benutzer, der den Server ausführen wird, Dateisystempfade und Rechte manuell festgelegt werden. Während der Installation von rpm ist ein viel bequemerer Weg, es kann Situationen geben, in denen dies keine Option ist.
Das trivialste Beispiel wäre, dass die rpm Paket nicht verfügbar ist, eine andere könnte sein, dass die Anwendung, die im Tomcat-Container ausgeführt wird, eine exakte Version von Tomcat benötigt, und indem der Paketmanager aus der Installation ausgeschlossen wird, wird sichergestellt, dass Systemaktualisierungen den Tomcat-Server unberührt lassen. Natürlich ist dies aus Sicherheitssicht möglicherweise nicht optimal.
Damit diese Installation funktioniert, muss Java 1.8 auf dem Zielsystem installiert sein.
- Zuerst laden wir die
zipherunter und extrahieren sie Paket. Indem wir die Download-Site von Tomcat 8 durchsuchen, können wir den benötigten Link kopieren undwgetverwenden auf dem Zielsystem. Wir verwenden/optals Basispfad der Installation, da dies ein üblicher Ort für manuell installierte Software ist. Wechseln wir in dieses Verzeichnis:# cd /opt
Und laden Sie das Paket direkt in diesen Pfad herunter:
# wget https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.zip --2019-01-02 18:06:00-- https://www-us.apache.org/dist/tomcat/tomcat-8/v8.5.37/bin/apache-tomcat-8.5.37.zip Resolving www-us.apache.org (www-us.apache.org)... 40.79.78.1 Connecting to www-us.apache.org (www-us.apache.org)|40.79.78.1|:443... connected. HTTP request sent, awaiting response... 200 OK Length: 10246390 (9.8M) [application/zip] Saving to: 'apache-tomcat-8.5.37.zip' apache-tomcat-8.5.37.zip 100%[================================================================================================================>] 9.77M 280KB/s in 23s 2019-01-02 18:06:24 (444 KB/s) - 'apache-tomcat-8.5.37.zip' saved [10246390/10246390]
Der Spiegel kann je nach Standort variieren. Verwenden Sie für eine optimale Leistung den Spiegel, der Ihrem Standort am nächsten liegt.
- Als nächstes extrahieren wir das Paket mit
unzipan Ort und Stelle:# unzip apache-tomcat-8.5.37.zip
- Wir erstellen einen symbolischen Link
/opt/tomcatzeigt auf/opt/apache-tomcat-8.5.37:# ln -s /opt/apache-tomcat-8.5.37 /opt/tomcat
Auf diese Weise müssen Sie bei der Installation einer weiteren Version und dem Wechsel zu dieser ändern, wohin der Symlink zeigt.
- Wir löschen die ursprünglichen
/opt/tomcat/logsVerzeichnis und ersetzen Sie es durch einen symbolischen Link, der auf/var/log/tomcatzeigt :# mkdir /var/log/tomcat # rmdir /opt/tomcat/logs # ln -s /var/log/tomcat /opt/tomcat/logsDer Grund dafür ist, alle Protokolle unter
/var/logzu speichern wobei die Speicherung unter Berücksichtigung der Systemlast und damit der Protokolldateigröße erfolgt. Es empfiehlt sich, Daten des gleichen Typs an einem Ort zu speichern, und zwar in/var/logist bereits der Ort der System-Logfiles. - Wir erstellen den Benutzer, der den Server ausführt, und legen ihn als Eigentümer der erforderlichen Verzeichnisse fest:
# useradd tomcat # chown -R tomcat:tomcat /opt/apache-tomcat-8.5.37 # chown -R tomcat:tomcat /var/log/tomcat - Wir fügen Ausführungsrechte zu den Skripten hinzu, die sich in der
binbefinden Verzeichnis:# chmod +x /opt/tomcat/bin/*.sh
- Wir erstellen eine grundlegende Dienstdatei
/etc/systemd/system/tomcat.servicefürsystemdmit unserem bevorzugten Texteditor wieviodernanomit folgendem Inhalt:[Unit] Description=Tomcat After=syslog.target network.target [Service] Type=forking User=tomcat Group=tomcat ExecStart=/opt/tomcat/bin/catalina.sh start ExecStop=/opt/tomcat/bin/catalina.sh stop [Install] WantedBy=multi-user.target - Wir laden die
systemdneu Konfiguration, alsosystemdwird die neue Dienstdatei bemerken:# systemctl daemon-reload
- Wir greifen auf Tomcat über Port
8080zu . Wir öffnen den Port auf der Firewall
:# firewall-cmd --zone=public --add-port=8080/tcp --permanent
Und die Firewall neu laden:
# firewall-cmd --reload
- Wir fragen
systemdüber den neuen Dienst:# systemctl status tomcatenable systemd service tomcat.service - Tomcat Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled) Active: inactive (dead) - Als
systemdjetzt den Dienst kennt, können wir ihn starten:# systemctl start tomcat
- Schließlich verifizieren wir unseren laufenden Server mit systemd:
# systemctl status tomcat tomcat.service - Tomcat Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled) Active: active (running) since Wed 2019-01-02 18:40:00 CET; 4s ago Process: 4854 ExecStop=/opt/tomcat/bin/catalina.sh stop (code=exited, status=0/SUCCESS) Process: 5529 ExecStart=/opt/tomcat/bin/catalina.sh start (code=exited, status=0/SUCCESS) Main PID: 5543 (java) Tasks: 47 (limit: 12544) Memory: 85.2M CGroup: /system.slice/tomcat.service ˪5543 /usr/bin/java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties [...]Wenn wir einen Browser öffnen und
http://<name-or-ip-address-of-the-server>:8080/examples/eingeben In der Adressleiste sollten wir die offiziellen Beispiele sehen, die mit dem Paket geliefert wurden und von unserem erfolgreich installierten Tomcat-Server bereitgestellt werden. - Bei Bedarf können wir den systemd-Dienst aktivieren, um unseren Server beim Booten automatisch zu starten:
# systemctl enable tomcat