Удаленное развертывание на Tomcat

Я хотел бы развернуть приложение (war) с помощью maven в удаленном tomcat (v7), сохранив существующий context.xml, или было бы также неплохо развернуть context.xml вместе с war. Я думаю, что это классическая проблема: если вы хотите повторно развернуть tomcat с помощью менеджера, он выполняет отмену развертывания и развертывание последовательно, что приводит к отмене развертывания context.xml в качестве побочного эффекта, после чего приложение не может запуститься.

Что я уже пробовал:

  • груз с разными настройками - без изменений
  • 'autoDeploy' = false - не работает под tomcat 7
  • ограничить tomcat в написании своего собственного каталога конфигурации - выдает сообщение об ошибке и tomcat 7 не запускается
  • помещение каждой контекстной информации в один context.xml.default - не удаляет контекст, но, к сожалению, у нас есть несколько приложений, которые используют один и тот же ключ в разных контекстах с разными значениями:-)
  • помещение контекстной конфигурации в альтернативный путь - вне ${catalina.base} - не может заставить его работать
  • создайте контейнер (докер) и повторно разверните его - это работает, но в настоящее время это не вариант здесь

Я думаю о написании простого сценария ssh (stop-tomcat, copy-war, start-tomcat) или альтернативного сценария менеджера, но сначала я хотел спросить вас, прежде чем изобретать велосипед. Я видел решения, использующие "tomcat7-maven-plugin", но слышал, что он работает только на локальном tomcat. Я не настаиваю на получении полноценного решения maven: если вы предлагаете решение с использованием менеджера с простыми вызовами REST, я также могу реализовать его в maven.

Таким образом, вопрос делится на три возможных решения (под tomcat7):

  • Чтобы сохранить context.xml через undeploy
  • Развернуть context.xml с войной
  • Для повторного развертывания приложения без отмены развертывания

Вы знаете надежное решение для этого?

1 ответ

Наконец-то у меня вышло не очень приятное, но работающее решение, запускающее скрипт, который: - входит на компьютер Tomcat - останавливает экземпляр - очищает каталог webapps - загружает войны в каталог webapps - запускает экземпляр

Опять же: проблема не существует в Tomcat 6 и 8:-)

Другие вопросы по тегам