Je ne trouve pas de réponse définitive à la raison pour laquelle Ubuntu définirait la CATALINA_BASE
variable d'environnement, la rendant différente de CATALINA_HOME
. J'ai trouvé ce document qui suggère que le fait de ne pas le définir CATALINA_BASE
le rendrait équivalent à CATALINA_HOME
. Ce document suggère également que la configuration CATALINA_BASE
serait effectuée pour rendre plusieurs instances disponibles.
Cependant, je ne semble pas pouvoir trouver quoi que ce soit qui explique cela. Vraisemblablement, courir avec un single CATALINA_HOME
a été bon pendant longtemps, mais Ubuntu est passé.
Je trouve cette question avec une réponse éclairante sur AskUbuntu mais il n'y a pas grand - chose spécifiquement CATALINA_HOME
contre CATALINA_BASE
. Cette question fait allusion au paramètre "appBase", qui est documenté dans la documentation Tomcat6 pour le conteneur Host dans le fichier de configuration.
Voici les questions: pourquoi ces deux variables sont-elles séparées? Quand devraient-ils être séparés? Qu'est-ce que cela permet à l'administrateur de faire? Que placez-vous ensuite dans chaque répertoire? Quand ces deux variables doivent-elles être identiques? Que recommande ASF pour la pratique standard?
Réponses:
catalina.home indique l'emplacement des informations communes.
catalina.base pointe vers le répertoire où se trouvent toutes les informations spécifiques à l' instance .
Vous avez donc 1 domicile et pouvez avoir plus d'une base.
Si vous avez 1 tomcat, vous pouvez leur attribuer la même valeur, mais les bonnes pratiques suggèrent de planifier à l'avance et de les séparer: vous ne savez jamais si vous avez besoin de plus d'un tomcat. Ubuntu a commencé à suivre cette façon de penser car il est plus logique: il facilite l'exécution de 2+ tomcats mais ne désactive pas l'exécution de 1 tomcat où les mettre tous les deux à la même valeur obligerait tout le monde à modifier la valeur de base. Il est plus logique de les garder différents.
Autorisez l'exécution de plus d'un tomcat en même temps, chaque instance de tomcat pouvant avoir ses propres applications.
La maison contient le binairy.
La base contient conf, logs, webapps, work et temp. 1 pour chaque instance de tomcat.
la source
CATALINA_HOME
contreCATALINA_BASE
Si vous exécutez plusieurs instances, vous avez besoin des deux variables, sinon uniquement
CATALINA_HOME
.En d'autres termes:
CATALINA_HOME
est obligatoire etCATALINA_BASE
facultatif.CATALINA_HOME
représente la racine de votre installation Tomcat.Voir: Apache Tomcat 7 - Introduction
Fonctionnant avec séparé
CATALINA_HOME
etCATALINA_BASE
documenté dans RUNNING.txt qui dit:Par exemple:
Plusieurs instances Tomcat
Comment vérifier
La façon la plus simple de vérifier ce qui vous appartient
CATALINA_BASE
etCATALINA_HOME
de l'exécuter est d'exécuterstartup.sh
, par exemple:Vous pouvez également vérifier où les fichiers Tomcat sont installés, par l'
dpkg
outil ci-dessous (Debian / Ubuntu):la source
En plus d'être le meilleur moyen d'exécuter deux instances de tomcat, il facilite la mise à jour.
J'utilise cette configuration.
CATALINA_HOME = / opt / apache-tomcat-7
CATALINA_BASE
pointe vers l'un ou l'autre répertoire de déploiement.Les binaires et bibliothèques de base sont sur
/opt/
Just copyserver.xml
,web.xml
(et certains autres fichiers, lisez les docs, s'il vous plaît) et créez des répertoires bin, logs, webapps, temp, work (RTLM, L as lovelly, please)Vous pouvez mettre à jour les binaires tomcat, en modifiant
CATALINA_HOME
le fichier $ CATALINA_BASE / bin / setenv.sh pour chaque instance ou vous pouvez simplement modifier le lien symbolique, en mettant à jour les binaires "globalement"Il est plus facile de mettre à jour même si vous n'avez qu'une seule instance.
la source