Развертывание веб-приложения Helidon в Службе приложений Azure с помощью Maven
В этом кратком руководстве вы используете подключаемый модуль Maven для веб-приложений Службы приложений Azure для развертывания приложения Helidon для Службы приложений Azure в Linux. Выберите развертывание Java SE через Tomcat и WAR-файлы, если вы хотите объединить зависимости приложения, среду выполнения и конфигурацию в один развернутый артефакт.
Если у вас нет подписки Azure, создайте бесплатную учетную запись перед началом работы.
Необходимые условия
- Azure CLI, либо локально, либо используя Azure Cloud Shell.
- Поддерживаемый пакет средств разработки Java (JDK). Дополнительные сведения об JDK, доступных для разработки в Azure, см. в поддержке Java в Azure и Azure Stack.
- Apache Mavenверсии 3.
Вход в Azure CLI
Самый простой способ настроить подключаемый модуль Maven для развертывания вашего приложения Helidon — использовать Azure CLI.
Войдите в учетную запись Azure с помощью следующей команды в Azure CLI:
az login
Следуйте инструкциям, чтобы завершить процесс входа.
Создание примера приложения из MicroProfile Starter
В этом разделе описано, как создать приложение Helidon и протестировать его локально.
Откройте веб-браузер и перейдите на сайт MicroProfile Starter.
Введите или выберите поле, как показано ниже.
Поле Ценность идентификатор группы com.microsoft.azure.samples.helidon artifactId helidon-hello-azure Версия MicroProfile MP 3.2 Версия Java SE Java 11 Среда выполнения MicroProfile Хелидон Примеры спецификаций Метрики, OpenAPI Выберите «DOWNLOAD», чтобы скачать проект.
Распакуируйте архивный файл. Командную строку можно использовать, как показано в следующем примере:
unzip helidon-hello-azure.zip
Кроме того, можно создать проект с помощью следующей команды:
mvn -U archetype:generate -DinteractiveMode=false \ -DarchetypeGroupId=io.helidon.archetypes \ -DarchetypeArtifactId=helidon-quickstart-se \ -DarchetypeVersion=2.0.0 \ -DgroupId=com.microsoft.azure.samples.helidon \ -DartifactId=helidon-hello-azure \ -Dpackage=com.microsoft.azure.samples.helidon
Перейдите в папку с готовым проектом, используя следующую команду:
cd helidon-hello-azure/
Создайте JAR-файл с помощью Maven с помощью следующей команды:
mvn clean package
После создания веб-приложения запустите его с помощью следующей команды Maven:
java -jar target/helidon-hello-azure.jar
Протестируйте веб-приложение, перейдя к нему локально с помощью веб-браузера. Например, можно использовать следующую команду, если у вас есть curl:
curl http://localhost:8080/greet
Появится следующее сообщение: Hello World
Настройка плагина Maven для службы приложений Azure
В этом разделе вы настраиваете файл проекта Helidon pom.xml так, чтобы Maven мог развернуть приложение в Службе приложений Azure на Linux.
Откройте файл pom.xml в редакторе кода.
В разделе
<build>
файла pom.xml вставьте следующую запись<plugin>
в тег<plugins>
:<build> <finalName>helidon-hello-azure</finalName> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.10.0</version> </plugin> </plugins> </build>
Настройте развертывание с помощью следующей команды Maven:
mvn azure-webapp:config
При появлении запроса выберите следующие параметры:
Поле ввода Ввод/Выбор значения Определите значение для OS(Default: Linux): 1. Linux Определите значение javaVersion(Default: Java 8): 1. Java 11 Подтверждение (Y/N) y Эта команда создает выходные данные, аналогичные следующему примеру:
[INFO] Scanning for projects... [INFO] [INFO] ------< com.microsoft.azure.samples.helidon:helidon-hello-azure >------- [INFO] Building myproject 1.0-SNAPSHOT [INFO] --------------------------------[ jar ]--------------------------------- [INFO] [INFO] --- azure-webapp-maven-plugin:1.10.0:config (default-cli) @ helidon-hello-azure --- Define value for OS(Default: Linux): 1. linux [*] 2. windows 3. docker Enter index to use: 1 Define value for javaVersion(Default: Java 8): 1. Java 11 2. Java 8 [*] Enter index to use: 1 Please confirm webapp properties AppName : helidon-hello-azure-1600998900939 ResourceGroup : helidon-hello-azure-1600998900939-rg Region : westeurope PricingTier : PremiumV2_P1v2 OS : Linux RuntimeStack : JAVA 11-java11 Deploy to slot : false Confirm (Y/N)? : y [INFO] Saving configuration to pom. [INFO] ------------------------------------------------------------------------ [INFO] BUILD SUCCESS [INFO] ------------------------------------------------------------------------ [INFO] Total time: 02:44 min [INFO] Finished at: 2020-09-25T10:57:35+09:00 [INFO] ------------------------------------------------------------------------
Добавьте раздел
<appSettings>
в раздел<configuration>
вPORT
,WEBSITES_PORT
иWEBSITES_CONTAINER_START_TIME_LIMIT
. Добавьте<include>/libs/*.jar</include>
в ресурсы при развертывании.<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <schemaVersion>V2</schemaVersion> <resourceGroup>microprofile</resourceGroup> <appName>helidon-hello-azure-1591663020899</appName> <pricingTier>P1v2</pricingTier> <region>japaneast</region> <runtime> <os>linux</os> <javaVersion>java11</javaVersion> <webContainer>java11</webContainer> </runtime> <appSettings> <property> <name>PORT</name> <value>8080</value> </property> <property> <name>WEBSITES_PORT</name> <value>8080</value> </property> <property> <name>WEBSITES_CONTAINER_START_TIME_LIMIT</name> <value>600</value> </property> </appSettings> <deployment> <resources> <resource> <directory>${project.basedir}/target</directory> <includes> <include>*.jar</include> <include>/libs/*.jar</include> </includes> </resource> </resources> </deployment> </configuration>
Развертывание приложения в Azure
После настройки всех параметров, описанных в предыдущих разделах этой статьи, вы можете развернуть веб-приложение в Azure. Для этого выполните следующие действия.
В командной строке или окне терминала, который вы использовали ранее, перестройте JAR-файл с помощью Maven, если вы внесли изменения в файл pom.xml с помощью следующей команды:
mvn clean package
Разверните веб-приложение в Azure с помощью Maven с помощью следующей команды:
mvn azure-webapp:deploy
Maven развертывает веб-приложение в Azure. Если веб-приложение или план веб-приложения еще не существуют, они будут созданы для вас. Это может занять несколько минут, прежде чем веб-приложение отображается по URL-адресу, показанному в выходных данных. Перейдите по URL-адресу в веб-браузере. Появится сообщение: Hello World
После развертывания веб-приложения, его можно управлять через портал Azure
Ваше веб-приложение включено в службы приложений.
Вы можете получить доступ к вашему веб-приложению, выбрав Обзор на странице Общие сведения для вашего веб-приложения.
Убедитесь, что развертывание выполнено успешно с использованием команды cURL /greet
, как и раньше, используя URL-адрес вашего веб-приложения с портала Azure вместо localhost
. Появится следующее сообщение: Hello World
Подтверждение потока журналов из запущенной службы приложений
Следующую команду можно использовать для просмотра console.log
в коде сайта отображаются в терминале.
az webapp log tail \
--resource-group microprofile \
--name helidon-hello-azure-1600998900939
Очистка ресурсов
Если ресурсы Azure больше не нужны, очистите развернутые ресурсы, удалив группу ресурсов.
- На портале Azure выберите группу ресурсов в меню.
- Введите microprofile в поле Filter по имени. Группа ресурсов, созданная в этом руководстве, должна иметь этот префикс.
- Выберите группу ресурсов, созданную в этом руководстве.
- Выберите Удалить группу ресурсов в меню.
Дальнейшие действия
Чтобы узнать больше о MicroProfile и Azure, перейдите в Центр документации по MicroProfile в Azure.
Дополнительные ресурсы
Дополнительные сведения о различных технологиях, описанных в этой статье, см. в следующих статьях: