Nie mogę znaleźć ostatecznej odpowiedzi na pytanie, dlaczego Ubuntu ustawia CATALINA_BASE
zmienną środowiskową, odróżniając ją od tego CATALINA_HOME
. Znalazłem ten dokument, który sugeruje, że brak ustawienia CATALINA_BASE
będzie równoznaczny z CATALINA_HOME
. Dokument ten sugeruje również, że należy wprowadzić ustawienia CATALINA_BASE
, aby udostępnić wiele instancji.
Wydaje mi się jednak, że nie jestem w stanie znaleźć niczego, co by to wyjaśniało. Prawdopodobnie praca z jednym CATALINA_HOME
była dobra od dawna, ale Ubuntu się zmieniło.
Znalazłem to pytanie z krytym świetlnej odpowiedź na AskUbuntu ale nie ma wiele specjalnie na CATALINA_HOME
wersetach CATALINA_BASE
. To pytanie odnosi się do parametru „appBase”, który jest udokumentowany w dokumentacji Tomcat6 dla kontenera Host w pliku konfiguracyjnym.
Oto pytania: Dlaczego te dwie zmienne są rozdzielone? Kiedy należy je rozdzielić? Co to pozwala administratorowi? Co następnie umieszczasz w każdym katalogu? Kiedy te dwie zmienne powinny być takie same? Co ASF zaleca dla standardowej praktyki?
Odpowiedzi:
catalina.home wskazuje na lokalizację wspólnych informacji.
catalina.base wskazuje katalog, w którym przechowywane są wszystkie informacje specyficzne dla instancji .
Masz więc 1 dom i możesz mieć więcej niż 1 bazę.
Jeśli masz 1 kocura, możesz ustawić go na tę samą wartość, ale dobra praktyka sugeruje, abyś planował z wyprzedzeniem i trzymał je oddzielnie: nigdy nie wiesz, czy potrzebujesz więcej niż jednego kocura. Ubuntu zaczął postępować zgodnie z tym sposobem myślenia, ponieważ jest bardziej logiczny: ułatwia uruchamianie 2+ kocurów, ale nie wyłącza uruchamiania 1 tomkatów, gdzie ustawienie ich obu na tę samą wartość wymagałoby od wszystkich edycji wartości podstawowej. Bardziej sensowne jest odróżnienie ich.
Pozwól, aby więcej niż 1 tomcat działało w tym samym czasie, gdy każda instancja tomcat może mieć własne aplikacje.
Dom zawiera binairy.
Baza zawiera conf, logi, aplikacje internetowe, pracę i temp. 1 na każdą instancję tomcat.
źródło
CATALINA_HOME
vsCATALINA_BASE
Jeśli korzystasz z wielu instancji, potrzebujesz obu zmiennych, w przeciwnym razie tylko
CATALINA_HOME
.Innymi słowy:
CATALINA_HOME
jest wymagany iCATALINA_BASE
jest opcjonalny.CATALINA_HOME
reprezentuje katalog główny instalacji Tomcat.Zobacz: Apache Tomcat 7 - Wprowadzenie
Działa z osobnym
CATALINA_HOME
iCATALINA_BASE
jest udokumentowany w RUNNING.txt, który mówi:Na przykład:
Wiele instancji Tomcat
Jak sprawdzić
Najprostszym sposobem sprawdzenia, jaka jest twoja
CATALINA_BASE
iCATALINA_HOME
jest uruchomionystartup.sh
, na przykład:Możesz również sprawdzić, gdzie są zainstalowane pliki Tomcat, za pomocą
dpkg
narzędzia jak poniżej (Debian / Ubuntu):źródło
Oprócz tego, że jest najlepszym sposobem na uruchomienie dwóch instancji tomcat, ułatwia aktualizację.
Korzystam z tej konfiguracji.
CATALINA_HOME = / opt / apache-tomcat-7
CATALINA_BASE
wskazuje na jeden lub drugi katalog wdrażania.Podstawowe dane binarne i biblioteki są na
/opt/
po prostu skopiowaćserver.xml
,web.xml
(i niektórych innych plików, czytać dokumenty, proszę) i tworzyć katalogi bin, dzienniki, webapps, temp, pracy (RTLM, L jak Prześliczne, proszę)Możesz zaktualizować pliki binarne tomcat, modyfikując
CATALINA_HOME
plik $ CATALINA_BASE / bin / setenv.sh dla każdej instancji lub możesz po prostu zmodyfikować dowiązanie symboliczne, aktualizując pliki binarne „globalnie”Łatwiej jest zaktualizować, nawet jeśli masz tylko jedną instancję.
źródło