2015-02-03 4 views
1

Я создаю maven3, tomcat7, Spring4 java web app. У меня есть приложение, развернутое на примере Amazon AWS Ec2. Мой текущий рабочий процесс выглядит следующим образомРазвертывание To tomcat7 без перезапуска сервера

  1. Внесите изменения в мою местную среду.
  2. git push мои изменения в моей учетной записи bitbucket.
  3. ssh в мой экземпляр Ec2.
  4. git pull мои изменения вниз от битбакет.
  5. kill -9 текущий текущий процесс котлета на Ec2
  6. Запуск mvn clean tomcat7:run на моем Ec2 для перезапуска сервера, чтобы изменения были применены.

Сервер работает на порту 8080, и я установил iptables для пересылки портов с 80 по 8080. Все это хорошо работает.

Однако, когда дело доходит до развертывания приложения tomcat/maven, я noob. Итак, вот мои вопросы:

Является ли это лучшим способом запуска моего веб-приложения java? Должны ли mvn install или mvn deploy быть частью процесса где-то?

Во многих учебных пособиях я вижу ссылки на server.xml для настройки tomcat, и, насколько мне известно, у меня нет файла server.xml, потому что tomcat полностью сконфигурирован maven с помощью плагина tomcat7. Это проблема?

И, наконец, как я могу внести изменения в свой живой сервер (экземпляр Ec2) без перезагрузки tomcat? Когда мое приложение будет жить, время ожидания сервера не будет приемлемым.

Я просто ищу общий объяснительный ответ о том, как этот процесс работает в реальном мире, поэтому я могу знать, правильно ли я делаю это.

Большое спасибо!

ответ

0

Вы все еще можете настроить параметры tomcat7 в ~/.m2/.settings.xml папку и добавить некоторые настройки, такие как:

<settings xmlns="http://maven.apache.org/SETTINGS/1.0.0" 
    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
    xsi:schemaLocation="http://maven.apache.org/SETTINGS/1.0.0 http://maven.apache.org/xsd/settings-1.0.0.xsd"> 
    <servers> 
     <server> 
      <id>TomcatServer</id> 
      <username>admin</username> 
      <password>admin</password> 
     </server> 
    </servers> 
</settings> 

Я не знаю, как вы можете сделать переход от живой a maven tomcat7: выполнить команду, но вы можете установить собственную версию для tomcat через диспетчер пакетов, поэтому вам просто нужно отказаться от .war в папке /var/lib/tomcat7/webapps (этот путь может измениться в некоторых дистрибутивах Linux). Затем вы можете удалить и погрузить новый .war в любое время без перезагрузки службы tomcat7.

0

Вы можете развернуть в tomcat через API.

  1. Редактировать% TOMCAT_HOME%/CONF/tomcat_users.xml Вашего файла должен выглядеть this.

  2. Редактировать% USER_HOME% /. М2/settings.xml Ваш файл должен выглядит this

  3. В вашем pom.xml добавить следующую plugin.

Итак, в вашем экземпляре AWS вам необходимо запустить сервер tomcat.