Ich kann keine endgültige Antwort darauf finden, warum Ubuntu die CATALINA_BASE
Umgebungsvariable so eingestellt hat, dass sie sich von unterscheidet CATALINA_HOME
. Ich habe dieses Dokument gefunden, das darauf hindeutet, dass CATALINA_BASE
eine Nichteinstellung es gleichwertig machen würde CATALINA_HOME
. In diesem Dokument wird auch vorgeschlagen, Einstellungen CATALINA_BASE
vorzunehmen, um mehrere Instanzen verfügbar zu machen.
Ich scheine jedoch nichts zu finden, was dies erklärt. Vermutlich war es CATALINA_HOME
lange Zeit gut , mit einer Single zu laufen , aber Ubuntu wechselte.
Ich fand diese Frage mit einer Beleuchtungs Antwort auf AskUbuntu aber es gibt nicht viel speziell auf CATALINA_HOME
vs. CATALINA_BASE
. Diese Frage hat anspielen auf die „appBase“ Parameter, der ist dokumentiert in der Tomcat6 Dokumentation für die Host - Container in der Konfigurationsdatei.
Hier sind die Fragen: Warum werden diese beiden Variablen getrennt? Wann sollten sie getrennt werden? Was kann der Administrator damit tun? Was legen Sie dann in jedes Verzeichnis? Wann sollten diese beiden Variablen gleich sein? Was empfiehlt ASF für die Standardpraxis?
Antworten:
katalina.home zeigt auf den Ort der allgemeinen Informationen.
Catalina.base zeigt auf das Verzeichnis, in dem alle instanzspezifischen Informationen gespeichert sind.
Sie haben also 1 Zuhause und können mehr als 1 Basis haben.
Wenn Sie einen Kater haben, können Sie ihn auf den gleichen Wert einstellen. Eine gute Vorgehensweise empfiehlt jedoch, dass Sie im Voraus planen und ihn getrennt halten: Sie wissen nie, ob Sie mehr als einen Kater benötigen. Ubuntu folgte dieser Denkweise, da sie logischer war: Es erleichtert das Ausführen von 2+ Tomcats, deaktiviert jedoch nicht das Ausführen von 1 Tomcat, wenn beide auf den gleichen Wert gesetzt werden müssen und jeder den Basiswert bearbeiten muss. Sinnvoller, sie anders zu halten.
Ermöglichen Sie die gleichzeitige Ausführung von mehr als einem Tomcat, wobei jede Tomcat-Instanz ihre eigenen Apps haben kann.
Zuhause enthält die Binairy.
Base enthält conf, logs, webapps, work und temp. 1 für jede Tomcat-Instanz.
quelle
CATALINA_HOME
vs.CATALINA_BASE
Wenn Sie mehrere Instanzen ausführen, benötigen Sie ansonsten nur beide Variablen
CATALINA_HOME
.Mit anderen Worten:
CATALINA_HOME
ist erforderlich undCATALINA_BASE
optional.CATALINA_HOME
stellt das Stammverzeichnis Ihrer Tomcat-Installation dar.Siehe: Apache Tomcat 7 - Einführung
Läuft mit separat
CATALINA_HOME
undCATALINA_BASE
ist in RUNNING.txt dokumentiert, die sagen:Beispielsweise:
Mehrere Tomcat-Instanzen
Wie zu überprüfen
Der einfachste Weg , um zu überprüfen , was Ihre
CATALINA_BASE
undCATALINA_HOME
ist durch Laufenstartup.sh
, zum Beispiel:Sie können auch mit dem folgenden
dpkg
Tool (Debian / Ubuntu) überprüfen, wo die Tomcat-Dateien installiert sind :quelle
Es ist nicht nur die beste Möglichkeit, zwei Tomcat-Instanzen auszuführen, sondern erleichtert auch die Aktualisierung.
Ich benutze dieses Setup.
CATALINA_HOME = / opt / apache-tomcat-7
CATALINA_BASE
verweist auf das eine oder andere Bereitstellungsverzeichnis.Grundlegende Programme und Bibliotheken sind auf
/opt/
einfach kopierenserver.xml
,web.xml
(und einigen anderen Dateien, die Dokumentation lesen, bitte) und Verzeichnisse erstellen ist, Protokolle, Webapps, temp, Arbeit (RTLM, L wie lovelly, bitte)Sie können Tomcat-Binärdateien aktualisieren, indem
CATALINA_HOME
Sie die Datei $ CATALINA_BASE / bin / setenv.sh für jede Instanz ändern, oder Sie können einfach den symbolischen Link ändern und die Binärdateien "global" aktualisieren.Es ist einfacher zu aktualisieren, selbst wenn Sie nur eine Instanz haben.
quelle