Ukázkové nasazení aplikace v Javě
V této lekci nakonfigurujete aplikaci Spring Boot, která se nasadí přes Maven. Pak aplikaci nasadíte do instance služby Azure App Service. Tato lekce ukazuje příklad kliniky pro domácí mazlíčky.
Ukázková aplikace
Naklonujte následující příkaz v oblíbeném nástroji příkazového řádku:
git clone https://github.com/spring-projects/spring-petclinic.git
Pak aplikaci spusťte místně:
cd spring-petclinic
./mvnw package
java -jar target/*.jar
Když otevřete příklad v prohlížeči, měl by vypadat takto:
Příprava ukázkové aplikace tak, aby byla připravená na cloud
Ve složce src najdete třídy objektů, kontroleru a úložiště.
Vzhledem k tomu, že Java je nezávislá na platformě, můžete si zvolit operační systém, ale verze Javy je pro nasazení důležitá. Verzi Javy najdete v souboru pom.xml.
<properties>
<java.version>17</java.version>
</properties>
V příkladu se používá Java 8, takže naše instance služby Azure App Service, ať už Linux nebo Windows, by měla používat také Javu 8. Vzhledem k tomu, že na platformě nezáleží, použijeme Linux pro náš příklad.
Do souboru pom.xml musíme přidat některé závislosti Azure. K přidání závislostí může dojít automaticky, pokud spustíte následující příkaz:
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.11.1:config
Výstup tohoto příkazu požádá o zadání některých možností. Tyto možnosti budou uloženy automaticky v pom.xml.
Please choose which part to config:
* 1: Application
2: Runtime
3: DeploymentSlot
Enter your choice: 1
Define value for appName [spring-petclinic-XXXX200]:
Define value for resourceGroup [spring-petclinic-XXXX200-rg]:
Define value for region [westeurope]:
Define value for pricingTier(P1v2):
1: b1
2: b2
3: b3
4: d1
5: f1
* 6: p1v2
7: p2v2
8: p3v2
9: s1
10: s2
11: s3
Enter your choice: 1
Please confirm webapp properties
AppName : spring-petclinic-XXXX200
ResourceGroup : spring-petclinic-XXXX200-rg
Region : westeurope
PricingTier : Basic_B2
OS : Linux
RuntimeStack : JAVA 8-jre8
Deploy to slot : false
Confirm (Y/N) [Y]: y
[INFO] Saving configuration to pom.
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
Jak vidíte, můžete použít výchozí hodnoty pro jednoduché nasazení.
Soubor pom.xml nyní přidal potřebný plugin pro automatické nasazení pomocí nástroje Maven do Azure.
<plugin>
<groupId>com.microsoft.azure</groupId>
<artifactId>azure-webapp-maven-plugin</artifactId>
<version>2.11.1</version>
<configuration>
<schemaVersion>V2</schemaVersion>
<subscriptionId>XXX-XXX-XXX</subscriptionId>
<resourceGroup>spring-petclinic-XXX200-rg</resourceGroup>
<appName>spring-petclinic-XXX200</appName>
<pricingTier>B2</pricingTier>
<region>westeurope</region>
<runtime>
<os>linux</os>
<javaVersion>jre8</javaVersion>
<webContainer>jre8</webContainer>
</runtime>
<deployment>
<resources>
<resource>
<directory>${project.basedir}/target</directory>
<includes>
<include>*.jar</include>
</includes>
</resource>
</resources>
</deployment>
</configuration>
</plugin>
Nasazení aplikace pomocí Mavenu
Už jsme připraveni na nasazení do služby Azure App Service.
mvn package com.microsoft.azure:azure-webapp-maven-plugin:1.12.0:deploy
Tento příkaz spustí testy. Pak automaticky spustí instanci služby Azure App Service a nasadí zabalenou aplikaci.
Blahopřejeme! Aplikace se úspěšně nasadí do služby Azure App Service.