Как развернуть приложение dropwizard

Я прочитал некоторые комментарии о сборке приложений dropwizard: [1] «Dropwizard предназначен для работы в виде JAR, а не в виде файла WAR». и [2] «Вы не можете этого сделать. Dropwizard встраивает Jetty. Вам следует рассмотреть возможность использования Джерси в качестве стандартного веб-приложения», поэтому мои вопросы таковы:

1 - Как развернуть файл jar в производственной среде?

2 - Как я буду управлять сервисом? например, есть ли способ контролировать работоспособность приложения? если приложение падает, как я могу снова автоматически перезапустить его?

[1] Как создать войну из приложения dropwizard? [2] Dropwizard в контейнере tomcat


person Paulo Luan    schedule 02.10.2014    source источник


Ответы (3)


Вы можете использовать такие инструменты, как runit или systemd, для управления вашим приложением dropwizard в Linux. Они могут делать такие вещи, как убедиться, что он запускается при запуске системы, и могут помочь в обнаружении сбоев. Присутствует немного скриптинга.

Вы можете указать инструменту мониторинга URL-адрес проверки работоспособности вашего приложения, чтобы отправлять оповещения, когда оно не работает.

Для развертывания я предпочитаю упаковывать приложения, используя системный формат упаковки, .deb (системы на основе Debian, включая Ubuntu) или .rpm (системы на основе RedHat). Используйте сборщик пакетов fpm, чтобы создать его, и включите ваши файлы runit (или что-то еще) и сценарии, чтобы скопировать файл jar куда-нибудь в целевую систему. Если у вас есть частный репозиторий пакетов, вы можете поместить в него сборки своего приложения, и установка станет вопросом «apt-get install myapp» или «yum install myapp». В противном случае перетащите пакет на целевой сервер и запустите «rpm -i myapp.rpm» или что-то подобное.

person Kief    schedule 03.10.2014
comment
Если вы используете Ubuntu, Джейми Фернесс написал отличный плагин maven dropwizard-debpkg-maven -plugin, который может упаковать ваше приложение и конфигурацию в виде файла .deb и создать для вас соответствующие сценарии инициализации и запуска. - person Martin Charlesworth; 26.02.2015

После запуска mvn package вашего исходного каталога указанный файл jar создается в целевом каталоге с помощью maven.

Просто загрузите этот jar-файл в любой каталог на сервере, например, /opt/myapplication/.

Файл jar можно запустить на сервере с помощью java -jar JARFILE, убедитесь, что у вас установлена ​​Java. Вот и все.

Теперь, когда вы запускаете это в рабочей среде, вы хотите, чтобы процесс контролировался (и перезапускался в случае сбоя) и запускался автоматически при загрузке. Для этого загляните в систему запуска вашего сервера (ранее упоминалась система systemd для тех дистрибутивов Linux, которые ее поддерживают, но в текущих версиях debian/ubuntu у вас есть ATM и другие механизмы загрузки, вам, вероятно, нужно написать стартовый скрипт для /etc/ init.d/myapplication).

Проверки работоспособности, как упоминалось ранее, интегрированы в приложение dropwizard, вы просто регулярно запрашиваете URL-адрес проверки работоспособности. В профессиональных средах у вас должен быть такой инструмент, как nagios, который вы могли бы указать на URL-адрес.

person Alexander Köb    schedule 04.10.2014

Если ваш сервер - unix, вы можете собрать пакеты fpm для установки службы на сервер. Просто соберите fpm, скопируйте на сервер и установите.

Или используйте ткань (http://www.fabfile.org/).

person user3280180    schedule 09.10.2014