Implementación de aplicaciones de Java de ejemplo
En esta unidad, configurará una aplicación de Spring Boot que se implementará mediante Maven. Después, implementará la aplicación en una instancia de Azure App Service. En esta unidad se muestra el ejemplo de una clínica veterinaria.
Aplicación de ejemplo
Clónelo en su herramienta de línea de comandos favorita.
git clone https://github.com/spring-projects/spring-petclinic.git
Y después ejecútela localmente.
cd spring-petclinic
./mvnw package
java -jar target/*.jar
Al abrir el ejemplo en el explorador, debería ser similar al siguiente:
Preparación de la aplicación de ejemplo para la nube
En la carpeta src encontrará las clases object, controller y repository.
Dado que Java es independiente de la plataforma, puede elegir libremente el sistema operativo, pero la versión de Java es importante para la implementación. Puede encontrar la versión de Java en el archivo pom.xml.
<properties>
<java.version>17</java.version>
</properties>
En el ejemplo se utiliza Java 8, por lo que nuestra instancia de Azure App Service, ya sea para Linux o Windows, también debería utilizar Java 8. Como la plataforma es irrelevante, en el ejemplo se usará Linux.
Será necesario agregar algunas dependencias de Azure al archivo pom.xml. Las dependencias se pueden agregar de forma automática si se ejecuta el comando siguiente:
mvn com.microsoft.azure:azure-webapp-maven-plugin:2.11.1:config
La salida de ese comando pedirá que se especifiquen algunas opciones. Estas opciones se almacenarán automáticamente en 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
Como puede ver, puede usar los valores predeterminados para una implementación sencilla.
El archivo pom.xml ya ha agregado el complemento necesario para la implementación automática basada en Maven en 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>
Implementación de la aplicación con Maven
Ya estamos preparados para la implementación en Azure App Service.
mvn package com.microsoft.azure:azure-webapp-maven-plugin:1.12.0:deploy
Este comando ejecuta las pruebas. Después, pone en marcha automáticamente una instancia de Azure App Service e implementa la aplicación empaquetada.
Felicidades. La aplicación se ha implementado correctamente en Azure App Service.