Nasazení webové aplikace Open Liberty Micro do služby Aplikace Azure Pomocí Mavenu
V tomto rychlém startu použijete modul plug-in Maven pro Aplikace Azure Service Web Apps k nasazení aplikace Open Liberty do služby Aplikace Azure Service v Linuxu. Pokud chcete sloučit závislosti aplikace, modul runtime a konfiguraci do jediného nasaditelného artefaktu, můžete zvolit nasazení Java SE pomocí Tomcatu a souborů WAR.
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Důležité
Zatímco služba Aplikace Azure je navržena, provozována a podporována společností Microsoft, software, na který běžíte, podléhá vlastním plánům podpory a licenčním podmínkám. Podrobnosti o podpoře softwaru popsaného v tomto článku najdete na hlavních stránkách tohoto softwaru, jak je uvedeno v článku. Podporu pro Open Liberty naleznete na stránce podpory Open Liberty. Podporu pro WebSphere Liberty najdete v tématu Podpora IBM Cloud.
Požadavky
- Azure CLI, buď místně, nebo prostřednictvím Azure Cloud Shellu.
- Podporovaná sada Java Development Kit (JDK). Další informace o sadách JDK, které jsou k dispozici při vývoji v Azure, najdete v tématu Podpora Javy v Azure a azure Stacku.
- Apache Maven verze 3.
Přihlášení k Azure CLI
Nejjednodušším a nejsnadnějším způsobem, jak získat modul plug-in Maven, který nasazuje vaši aplikaci Open Liberty, je použití Azure CLI.
Přihlaste se k účtu Azure pomocí Azure CLI:
az login
Postupujte podle pokynů a dokončete proces přihlášení.
Vytvoření ukázkové aplikace z MicroProfile Starter
V této části vytvoříte aplikaci Open Liberty a otestujete ji místně.
Otevřete webový prohlížeč a přejděte na úvodní web MicroProfile.
Pomocí hodnot v následující tabulce vyplňte úvodní soubor MicroProfile.
Pole Hodnota groupId com.microsoft.azure.samples.openliberty artifactId openliberty-hello-azure Verze MicroProfile MP 4.0 Verze Java SE Java 11 MicroProfile Runtime Otevřít Svobodu Příklady pro specifikace Metriky, OpenAPI Vyberte STÁHNOUT a stáhněte projekt.
Rozbalte archivní soubor; Například:
unzip openliberty-hello-azure.zip
Spuštění aplikace v místním prostředí
Přejděte do adresáře pro dokončený projekt; například:
cd openliberty-hello-azure/
Sestavení projektu pomocí Mavenu; Například:
mvn clean package
Spusťte projekt; Například:
java -jar target/openliberty-hello-azure.jar
Otestujte webovou aplikaci tak, že ji místně otevřete ve webovém prohlížeči. Pokud máte k dispozici nástroj curl, můžete například použít následující příkaz:
curl http://localhost:9080/data/hello
Měla by se zobrazit následující zpráva: Hello World
Konfigurace modulu plug-in Maven pro Azure App Service
V této části nakonfigurujete projekt Open Liberty pom.xml soubor tak, aby Maven mohl aplikaci nasadit do služby Aplikace Azure Service v Linuxu.
Pokud chcete nakonfigurovat nasazení, spusťte následující příkaz Mavenu:
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.3.0:config
Po zobrazení výzvy vyberte následující možnosti:
Vstupní pole Vstupní/výběrové hodnoty Definujte hodnotu pro OS(Default: Linux): 1. linux Definovat hodnotu pro javaVersion(Výchozí: Java 8): 2. Java 11 Definujte hodnotu pro runtimeStack(Default: TOMCAT 8.5): 2. TOMCAT 8.5 Confirm (Y/N) y
Poznámka:
I když tomcat nepoužíváme, vyberte TOMCAT 8.5
v tuto chvíli. Během podrobné konfigurace upravíte hodnotu z TOMCAT 8.5
hodnoty do Java
.
Tento příklad používá konkrétní verzi modulu plug-in Aplikace Azure Service Maven. Měli byste zvážit použití nejnovější dostupné verze. Počet nejnovějších verzí můžete zjistit na webu, jako je například mvnrepository.com.
Tento příkaz vytvoří výstup podobný následujícímu příkladu:
[INFO] Scanning for projects...
[INFO]
[INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
[INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO]
[INFO] --- azure-webapp-maven-plugin:2.3.0:config (default-cli) @ openliberty-hello-azure ---
Auth type: AZURE_CLI
Default subscription:
Username:
[INFO] Subscription:
[INFO] It may take a few minutes to load all Java Web Apps, please be patient.
Define value for OS [Linux]:
1: Windows
* 2: Linux
3: Docker
Enter your choice:
Define value for javaVersion [Java 8]:
* 1: Java 8
2: Java 11
Enter your choice: 2
Define value for webContainer [Tomcat 8.5]:
1: Jbosseap 7
* 2: Tomcat 8.5
3: Tomcat 9.0
Enter your choice:
Define value for pricingTier [P1v2]:
1: B1
2: B2
3: B3
4: D1
5: EP1
6: EP2
7: EP3
8: F1
* 9: P1v2
10: P1v3
11: P2v2
12: P2v3
13: P3v2
14: P3v3
15: S1
16: S2
17: S3
18: Y1
Enter your choice:
Please confirm webapp properties
Subscription Id : ********-****-****-****-************
AppName : openliberty-hello-azure-1642075767899
ResourceGroup : openliberty-hello-azure-1642075767899-rg
Region : centralus
PricingTier : P1v2
OS : Linux
Java : Java 11
Web server stack: Tomcat 8.5
Deploy to slot : false
Confirm (Y/N) [Y]:
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 21.981 s
[INFO] Finished at: 2022-01-13T21:09:39+09:00
[INFO] ------------------------------------------------------------------------
Upravte soubor server.xml v adresáři /src/main/liberty/config/ pro spuštění aplikace ve službě Azure Web Apps. Do souboru přidejte
host="*"
řádek do<httpEndpoint>
značky, jak je znázorněno v následujícím příkladu:<httpEndpoint id="defaultHttpEndpoint" host="*" httpPort="9080" httpsPort="9443"/>
runtime
Upravte položku zTOMCAT 8.5
dojava
adeployment
z*.war
do*.jar
souboru pom.xml. Pak přidejte<appSettings>
oddíl do oddílu<configuration>
PORT
,WEBSITES_PORT
aWEBSITES_CONTAINER_START_TIME_LIMIT
. Položkaazure-webapp-maven-plugin
XML bude vypadat podobně jako v následujícím příkladu:<plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-webapp-maven-plugin</artifactId> <version>2.3.0</version> <configuration> <schemaVersion>v2</schemaVersion> <subscriptionId>********-****-****-****-************</subscriptionId> <resourceGroup>openliberty-hello-azure-1642075767899-rg</resourceGroup> <appName>openliberty-hello-azure-1642075767899</appName> <pricingTier>P1v2</pricingTier> <region>japaneast</region> <runtime> <os>Linux</os> <javaVersion>Java 11</javaVersion> <webContainer>java</webContainer> </runtime> <appSettings> <property> <name>PORT</name> <value>9080</value> </property> <property> <name>WEBSITES_PORT</name> <value>9080</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> </includes> </resource> </resources> </deployment> </configuration> </plugin>
Nasadit aplikaci do Azure
Jakmile nakonfigurujete všechna nastavení v předchozích částech tohoto článku, jste připraveni nasadit webovou aplikaci do Azure. Můžete to udělat podle následujících kroků:
Pokud jste provedli nějaké změny v souboru pom.xml, na příkazovém řádku nebo v okně terminálu, které jste používali dříve, znovu zkompilujte soubor JAR pomocí Mavenu. Například:
mvn clean package
Nasaďte webovou aplikaci do Azure pomocí Mavenu. Například:
mvn azure-webapp:deploy
Pokud nasazení proběhlo úspěšně, zobrazí se následující výstup.
[INFO] Scanning for projects...
[INFO]
[INFO] ---< com.microsoft.azure.samples.openliberty:openliberty-hello-azure >----
[INFO] Building openliberty-hello-azure 1.0-SNAPSHOT
[INFO] --------------------------------[ war ]---------------------------------
[INFO]
[INFO] --- azure-webapp-maven-plugin:2.3.0:deploy (default-cli) @ openliberty-hello-azure ---
Auth type: AZURE_CLI
[INFO] Creating web app openliberty-hello-azure-1642075767899...
[INFO] Successfully created Web App openliberty-hello-azure-1642075767899.
[INFO] Trying to deploy external resources to openliberty-hello-azure-1642075767899...
[INFO] Successfully deployed the resources to openliberty-hello-azure-1642075767899
[INFO] Trying to deploy artifact to openliberty-hello-azure-1642075767899...
[INFO] Deploying (/Users/Downloads/openliberty-hello-azure/target/openliberty-hello-azure.jar)[jar] ...
[INFO] Successfully deployed the artifact to https://openliberty-hello-azure-1642075767899.azurewebsites.net
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 01:11 min
[INFO] Finished at: 2022-01-13T21:29:50+09:00
[INFO] ------------------------------------------------------------------------
Maven nasadí vaši webovou aplikaci do Azure. Pokud webová aplikace nebo plán webové aplikace ještě neexistují, vytvoří se za vás. Může trvat několik minut, než bude webová aplikace viditelná na adrese URL zobrazené ve výstupu. Ve webovém prohlížeči přejděte na příslušnou adresu URL. Měla by se zobrazit následující obrazovka.
Po nasazení aplikace ji můžete spravovat prostřednictvím webu Azure Portal.
Vaše webová aplikace bude uvedená ve skupině prostředků.
Ke své webové aplikaci se dostanete tak , že vyberete Procházet na stránce Přehled vaší webové aplikace. Ověřte, že nasazení proběhlo úspěšně a spuštěno.
Potvrzení streamu protokolu ze spuštěné služby App Service
Zobrazí se (nebo "tail") protokoly ze spuštěné služby App Service. Všechna volání console.log
v kódu lokality se zobrazí v terminálu.
az webapp log tail \
--resource-group openliberty-hello-azure-1642075767899-rg \
--name openliberty-hello-azure-1642075767899
Vyčištění prostředků
Pokud už nasazené prostředky Azure nepotřebujete, vyčistěte je odstraněním skupiny prostředků.
- Na webu Azure Portal vyberte v nabídce nalevo Skupina prostředků.
- Do pole Filtrovat podle názvu zadejte mikroprofile, skupina prostředků vytvořená v tomto kurzu by měla mít tuto předponu.
- Vyberte skupinu prostředků, kterou jste vytvořili v tomto kurzu.
- V horní nabídce vyberte Odstranit skupinu prostředků.
Další kroky
Další informace o MicroProfile a Azure najdete v centru dokumentace k MicroProfile v Azure.
Další materiály
Další informace o různých technologiích popsaných v tomto článku najdete v následujících článcích: