Implementación de aplicaciones Spring Boot mediante Maven
Nota:
Azure Spring Apps es el nuevo nombre del servicio Azure Spring Cloud. Aunque el servicio tiene un nuevo nombre, verá el nombre antiguo en algunos lugares durante un tiempo mientras trabajamos para actualizar recursos, como capturas de pantalla, vídeos y diagramas.
Este artículo se aplica a: ✔️ Java ❌ C#
Este artículo se aplica a: ✔️ Nivel Básico o Estándar ✔️ Enterprise
En este artículo se muestra cómo usar el complemento de Maven de Azure Spring Apps para configurar e implementar aplicaciones en Azure Spring Apps.
Requisitos previos
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Una instancia de Azure Spring Apps ya aprovisionada.
- JDK 8 o JDK 11
- Apache Maven
- CLI de Azure, versión 2.45.0 o superior con la extensión de Azure Spring Apps. Para instalar esta extensión, puede usar el comando siguiente:
az extension add --name spring
Generación de un proyecto de Spring
Para crear un proyecto de Spring para este artículo, siga estos pasos:
Vaya a Spring Initializr para generar un proyecto de ejemplo con las dependencias recomendadas para Azure Spring Apps. Este vínculo usa la siguiente dirección URL para proporcionarle la configuración predeterminada.
https://start.spring.io/#!type=maven-project&language=java&platformVersion=2.5.7&packaging=jar&jvmVersion=1.8&groupId=com.example&artifactId=hellospring&name=hellospring&description=Demo%20project%20for%20Spring%20Boot&packageName=com.example.hellospring&dependencies=web,cloud-eureka,actuator,cloud-config-client
En la imagen siguiente se muestra la configuración de Spring Initializr recomendada para este proyecto de ejemplo.
Este ejemplo usa la versión 8 de Java. Si desea usar la versión 11, cambie la opción en los metadatos del proyecto.
Haga clic en Generar cuando se establezcan todas las dependencias.
Descargue y desempaquete el paquete y, después, cree un controlador web para una aplicación web. Agregue el archivo src/main/java/com/example/hellospring/HelloController.java con el contenido siguiente:
package com.example.hellospring; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RequestMapping; @RestController public class HelloController { @RequestMapping("/") public String index() { return "Greetings from Azure Spring Apps!"; } }
Compilación local de las aplicaciones de Spring
Para compilar el proyecto mediante Maven, ejecute los comandos siguientes:
cd hellospring
mvn clean package -DskipTests -Denv=cloud
La compilación del proyecto tarda varios minutos. Una vez que se complete, debería tener archivos JAR individuales para cada servicio en sus respectivas carpetas.
Aprovisionamiento de una instancia de Azure Spring Apps
En el procedimiento siguiente se crea una instancia de Azure Spring Apps desde Azure Portal.
Abra Azure Portal en una pestaña ventana.
En el cuadro de búsqueda superior, busque Azure Spring Apps.
Seleccione Azure Spring Apps en los resultados.
En la página de Azure Spring Apps, seleccione + Crear.
Rellene el formulario de la página Crear de Azure Spring Apps. Tenga en cuenta las directrices siguientes:
- Suscripción: seleccione la suscripción a la que desea que se facture este recurso.
- Grupo de recursos: se recomienda crear grupos de recursos para los nuevos recursos. Usará este grupo de recursos en pasos posteriores como <nombre del grupo de recursos>.
- Service Details/Name (Detalles o nombre del servicio): especifique el <nombre de la instancia de servicio>. El nombre debe tener entre 4 y 32 caracteres, y solo puede contener números, letras minúsculas y guiones. El primer carácter del nombre del servicio debe ser una letra y el último debe ser una letra o un número.
- Ubicación: seleccione la región de la instancia de servicio.
Seleccione Revisar y crear.
Generación de configuraciones e implementación en Azure Spring Apps
Para generar configuraciones e implementar la aplicación, siga estos pasos:
Ejecute el siguiente comando desde la carpeta raíz hellospring, que contiene el archivo POM. Si ya inició sesión con la CLI de Azure, el comando tomará automáticamente las credenciales. De lo contrario, el comando le pedirá la información de inicio de sesión. Para obtener más información, consulte Autenticación en el repositorio azure-maven-plugins en GitHub.
mvn com.microsoft.azure:azure-spring-apps-maven-plugin:1.10.0:config
Se le pedirá que seleccione:
- Id. de suscripción: la suscripción que usó para crear una instancia de Azure Spring Apps.
- Instancia de servicio: el nombre de la instancia de Azure Spring Apps.
- Nombre de la aplicación: Nombre de la aplicación que prefiera, o use el valor predeterminado
artifactId
. - Punto de conexión público: Indique true para exponer la aplicación al acceso público; de lo contrario, false.
Compruebe que el elemento
appName
del archivo POM tenga el valor correcto. La parte pertinente del archivo POM debe ser similar al ejemplo siguiente.<build> <plugins> <plugin> <groupId>com.microsoft.azure</groupId> <artifactId>azure-spring-apps-maven-plugin</artifactId> <version>1.10.0</version> <configuration> <subscriptionId>xxxxxxxxx-xxxx-xxxx-xxxxxxxxxxxx</subscriptionId> <clusterName>v-spr-cld</clusterName> <appName>hellospring</appName>
El archivo POM ahora contiene las dependencias y configuraciones del complemento.
Implemente la aplicación mediante el comando siguiente.
mvn azure-spring-apps:deploy
Comprobación de los servicios
Después de completar la implementación, puede acceder a la aplicación en https://<service instance name>-hellospring.azuremicroservices.io/
.
Limpieza de recursos
Si tiene pensado seguir trabajando con la aplicación de ejemplo, puede que quiera dejar los recursos tal cual. Cuando ya no necesite el grupo de recursos que contiene la instancia de Azure Spring Apps, elimínelo. Para eliminar el grupo de recursos mediante la CLI de Azure, use estos comandos:
echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."
Pasos siguientes
Comentarios
https://aka.ms/ContentUserFeedback.
Próximamente: A lo largo de 2024 iremos eliminando gradualmente las Cuestiones de GitHub como mecanismo de retroalimentación para el contenido y lo sustituiremos por un nuevo sistema de retroalimentación. Para más información, consulta:Enviar y ver comentarios de