Я не могу найти однозначного ответа на вопрос, почему Ubuntu устанавливает CATALINA_BASE
переменную окружения, что делает ее отличной от CATALINA_HOME
. Я нашел этот документ, который предполагает, что не установка CATALINA_BASE
сделает его эквивалентным CATALINA_HOME
. В этом документе также предполагается, что настройка CATALINA_BASE
будет сделана, чтобы сделать доступными несколько экземпляров.
Тем не менее, я не могу найти ничего, что объясняет это. Предположительно, работа с синглом CATALINA_HOME
была хороша долгое время, но Ubuntu переключился.
Я нашел этот вопрос с ярким ответом на AskUbuntu, но особо мало о CATALINA_HOME
против CATALINA_BASE
. Этот вопрос относится к параметру appBase, который задокументирован в документации Tomcat6 для контейнера Host в файле конфигурации.
Вот вопросы: Почему эти две переменные разделены? Когда они должны быть отделены? Что это позволяет администратору делать? Что вы тогда помещаете в каждый каталог? Когда эти две переменные должны быть одинаковыми? Что ASF рекомендует для стандартной практики?
Ответы:
catalina.home указывает на расположение общей информации.
catalina.base указывает на каталог, в котором хранится вся информация, относящаяся к экземпляру .
Таким образом, у вас есть 1 дом и может быть более 1 базы.
Если у вас есть 1 кот, вы можете установить для них одно и то же значение, но хорошая практика предложит вам планировать заранее и держать их отдельно: вы никогда не узнаете, нужно ли вам больше одного кота. Ubuntu начал придерживаться этого способа мышления, так как он более логичен: он облегчает запуск 2+ котов, но не отключает запуск 1 кота, когда установка их обоих на одно и то же значение потребует от всех редактирования базового значения. Имеет больше смысла держать их разными.
Разрешить запуск более одного tomcat одновременно, когда каждый экземпляр tomcat может иметь свои собственные приложения.
Дом содержит бинарий.
База содержит conf, логи, webapps, work и temp. 1 для каждого экземпляра кота.
источник
CATALINA_HOME
противCATALINA_BASE
Если вы запускаете несколько экземпляров, вам нужны обе переменные, в противном случае только
CATALINA_HOME
.Другими словами:
CATALINA_HOME
обязательно иCATALINA_BASE
необязательно.CATALINA_HOME
представляет корень вашей установки Tomcat.Смотрите: Apache Tomcat 7 - Введение
Работает с отдельным
CATALINA_HOME
иCATALINA_BASE
задокументировано в RUNNING.txt, в котором говорится:Например:
Несколько экземпляров Tomcat
Как проверить
Самый простой способ проверить, что у вас
CATALINA_BASE
иCATALINA_HOME
есть, запустивstartup.sh
, например:Вы также можете проверить, где установлены файлы Tomcat, с помощью
dpkg
инструмента, как показано ниже (Debian / Ubuntu):источник
Помимо того, что это лучший способ запуска двух экземпляров tomcat, его легче обновлять.
Я использую эту настройку.
CATALINA_HOME = / Opt / апаша-7-кот
CATALINA_BASE
указывает на тот или иной каталог развертывания.Основные исполняемые файлы и библиотеки на
/opt/
просто скопироватьserver.xml
,web.xml
(и некоторые другие файлы, читать документы, пожалуйста) и создавать каталоги корзину, журналы, WebApps, темп, работу (РТЛЙ, L , как Lovelly, пожалуйста)Вы можете обновить двоичные файлы tomcat, изменив
CATALINA_HOME
файл $ CATALINA_BASE / bin / setenv.sh для каждого экземпляра или просто изменив символическую ссылку, обновив двоичные файлы «глобально»Обновление легче, даже если у вас есть только один экземпляр.
источник