Tomcat installation per tarball (Ubuntu 18.04): Unterschied zwischen den Versionen
Zeile 161: | Zeile 161: | ||
==== Mehrere Tomcat-Instanzen ==== | ==== Mehrere Tomcat-Instanzen ==== | ||
==== ${TOMCAT_BASE}/conf/Catalina/localhost/manager.xml ==== | ===== ${TOMCAT_BASE}/conf/Catalina/localhost/manager.xml ===== | ||
<pre> | <pre> | ||
Zeile 173: | Zeile 173: | ||
</pre> | </pre> | ||
==== ${TOMCAT_BASE}/conf/Catalina/localhost/host-manager.xml ==== | ===== ${TOMCAT_BASE}/conf/Catalina/localhost/host-manager.xml ===== | ||
<pre> | <pre> |
Version vom 6. Januar 2021, 16:12 Uhr
Noch in Bearbeitung
Voraussetzungen
Java siehe Java (Ubuntu)
Benutzer anlegen
sudo addgroup --system --no-create-home --disabled-login --group tomcat sudo adduser --system --no-create-home --disabled-login --ingroup tomcat tomcat
Alternativ mit fixer UID:
sudo addgroup --system --no-create-home --disabled-login --uid 128 --group tomcat sudo adduser --system --no-create-home --disabled-login --uid 128 --ingroup tomcat tomcat
Download
Verfügbare Versionen siehe http://www.eu.apache.org/dist/tomcat/
wget https://downloads.apache.org/tomcat/tomcat-10/v10.0.0/bin/apache-tomcat-10.0.0.tar.gz tar -xzf apache-tomcat-10.0.0.tar.gz
Installationsverzeichnis anlegen:
sudo mkdir -p /opt/tomcat/tomcat10_0_0/
Entpacktes Tomcat-Verzeichnis verschieben und Besitzer setzen:
sudo mv apache-tomcat-10.0.0 /opt/tomcat/tomcat10_0_0/tomcat10 sudo chown -R tomcat:tomcat /opt/tomcat/tomcat10_0_0/
Installation
Einen symbolischen Link auf das Verzeichnis mit der Version für Tomcat 10 anlegen (falls mehrere Versionen installiert sind):
cd /opt/tomcat/ sudo ln -s /opt/tomcat/tomcat10_0_0 tomcat10
Umgebungsvariablen setzen
- CATALINA_HOME = Verzeichnis, wo die Binärdateien liegen
- CATALINA_BASE = Verzeichnis, wo die Instanz-spezifischen Dateien (z.B. Konfigurationsdateien) liegen (bei einer Instanz können beide Variablen gleich sein)
Dazu eine Datei /etc/tomcat10.conf erstellen:
sudo vi /etc/tomcat10.conf
Diese Datei mit folgenden Inhalt befüllen:
# Where your java installation lives JAVA_HOME="/usr/lib/jvm/java-1.8.0-openjdk-armhf" # Where your tomcat installation lives CATALINA_BASE="/opt/tomcat/tomcat10_0_0/tomcat10" CATALINA_HOME="/opt/tomcat/tomcat10_0_0/tomcat10" JASPER_HOME="/opt/tomcat/tomcat10_0_0/tomcat10" CATALINA_TMPDIR="/opt/tomcat/tomcat10_0_10/tomcat10/temp" # Set the TOMCAT_PID location CATALINA_PID="$CATALINA_HOME/bin/catalina.pid" # What user should run tomcat TOMCAT_USER="tomcat"
In der Datei /opt/tomcat/tomcat10_0_0/tomcat10/bin/catalina.sh die Variablenkonfiguration einfügen:
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/bin/catalina.sh
... # Ensure that any user defined CLASSPATH variables are not used on startup, # but allow them to be specified in setenv.sh, in rare case when it is needed. CLASSPATH= # Get the tomcat config (use this for environment specific settings) if [ -z "${TOMCAT_CFG}" ]; then TOMCAT_CFG="/etc/tomcat10.conf" fi if [ -r "$TOMCAT_CFG" ]; then . $TOMCAT_CFG fi if [ -r "$CATALINA_BASE/bin/setenv.sh" ]; then . "$CATALINA_BASE/bin/setenv.sh" ...
Konfiguration
Tomcat Benutzer anlegen
Dazu in der Datei $CATALINA_HOME/conf/tomcat-users.xml folgende Zeilen zwischen <tomcat-users> und </tomcat-users> einfügen:
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/conf/tomcat-users.xml
<role rolename="admin-gui"/> <role rolename="manager-gui"/> <user username="tomcat" password="tomcat" roles="admin-gui,manager-gui"/>
Admin-GUI's für alle Addressen erlauben
Einzelne Tomcat-Instanz
${CATALINA_HOME}/webapps/manager/META-INF/context.xml
Dazu die Datei
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/webapps/manager/META-INF/context.xml
bearbeiten und folgende Zeile auskommentieren:
<?xml version="1.0" encoding="UTF-8"?> ... <Context antiResourceLocking="false" privileged="true" > ... <!-- <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" /> --> ... </Context>
${CATALINA_HOME}/webapps/host-manager/META-INF/context.xml
In der Datei
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/webapps/host-manager/META-INF/context.xml
wie vorher Valve
auskommentieren.
Mehrere Tomcat-Instanzen
${TOMCAT_BASE}/conf/Catalina/localhost/manager.xml
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/conf/Catalina/localhost/manager.xml <pre> <pre> <Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/manager"> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" /> </Context>
${TOMCAT_BASE}/conf/Catalina/localhost/host-manager.xml
sudo vi /opt/tomcat/tomcat10_0_0/tomcat10/conf/Catalina/localhost/host-manager.xml <pre> <pre> <Context privileged="true" antiResourceLocking="false" docBase="${catalina.home}/webapps/host-manager"> <Valve className="org.apache.catalina.valves.RemoteAddrValve" allow="^.*$" /> </Context>
Als Service mit systemctl
...
Realm (Security Authentication)
https://tomcat.apache.org/tomcat-7.0-doc/realm-howto.html#JDBCRealm
http://www.avajava.com/tutorials/lessons/how-do-i-use-a-jdbc-realm-with-tomcat-and-mysql.html?page=1
Zurück zu Tomcat (tarball)