No puedo encontrar una respuesta definitiva a por qué Ubuntu establecería la CATALINA_BASE
variable de entorno, haciéndola diferente CATALINA_HOME
. Encontré este documento que sugiere que no establecerlo CATALINA_BASE
lo haría equivalente a CATALINA_HOME
. Ese documento también sugiere que la configuración CATALINA_BASE
se realizaría para hacer que varias instancias estén disponibles.
Sin embargo, parece que no puedo encontrar nada que explique esto. Presumiblemente, correr con un solo CATALINA_HOME
ha sido bueno durante mucho tiempo, pero Ubuntu cambió.
He encontrado esta pregunta con una respuesta iluminadora en AskUbuntu pero no hay mucho más específicamente en CATALINA_HOME
contra CATALINA_BASE
. Esa pregunta alude al parámetro "appBase", que está documentado en la documentación de Tomcat6 para el contenedor Host en el archivo de configuración.
Aquí están las preguntas: ¿Por qué están separadas estas dos variables? ¿Cuándo deberían separarse? ¿Qué le permite hacer esto al administrador? ¿Qué coloca luego en cada directorio? ¿Cuándo deberían ser iguales estas dos variables? ¿Qué recomienda ASF para la práctica estándar?
Respuestas:
catalina.home apunta a la ubicación de la información común.
catalina.base apunta al directorio donde se encuentra toda la información específica de la instancia .
Entonces tiene 1 hogar y puede tener más de 1 base.
Si tiene 1 tomcat, puede establecerlos en el mismo valor, pero una buena práctica le sugerirá que planifique con anticipación y los mantenga separados: nunca sabe si necesita más de un tomcat. Ubuntu comenzó a seguir esta forma de pensar debido a que es más lógico: hace que sea más fácil ejecutar 2 o más tomcats, pero no deshabilita la ejecución de 1 tomcat donde establecer ambos en el mismo valor requeriría que todos editen el valor base. Tiene más sentido mantenerlos diferentes.
Permita que se ejecute más de 1 tomcat al mismo tiempo, donde cada instancia de tomcat puede tener sus propias aplicaciones.
El hogar contiene los binairy.
La base contiene conf, logs, webapps, work y temp. 1 por cada instancia de tomcat.
fuente
CATALINA_HOME
vsCATALINA_BASE
Si está ejecutando varias instancias, entonces necesita ambas variables, de lo contrario solo
CATALINA_HOME
.En otras palabras:
CATALINA_HOME
es obligatorio yCATALINA_BASE
es opcional.CATALINA_HOME
representa la raíz de su instalación de Tomcat.Ver: Apache Tomcat 7 - Introducción
Se ejecuta por separado
CATALINA_HOME
yCATALINA_BASE
se documenta en RUNNING.txt que dice:Por ejemplo:
Múltiples instancias de Tomcat
Como revisar
La forma más fácil de verificar cuál es tu
CATALINA_BASE
yCATALINA_HOME
es ejecutandostartup.sh
, por ejemplo:También puede verificar dónde están instalados los archivos Tomcat, mediante la
dpkg
herramienta que se muestra a continuación (Debian / Ubuntu):fuente
Además de ser la mejor manera de ejecutar dos instancias de tomcat, facilita la actualización.
Estoy usando esta configuración.
CATALINA_HOME = / opt / apache-tomcat-7
CATALINA_BASE
apunta a uno u otro directorio de implementación.Los archivos binarios básicos y las bibliotecas están en
/opt/
Solo copieserver.xml
,web.xml
(y algunos otros archivos, lea los documentos, por favor) y cree directorios bin, logs, webapps, temp, work (RTLM, L como lovelly, por favor)Puede actualizar los archivos binarios de tomcat modificando
CATALINA_HOME
el archivo $ CATALINA_BASE / bin / setenv.sh para cada instancia o simplemente puede modificar el enlace simbólico, actualizando los archivos binarios "globalmente"Es más fácil actualizar incluso si solo tiene una instancia.
fuente