Inicio rápido: Creación de una aplicación de Java en Azure App Service

Azure App Service proporciona un servicio de hospedaje web muy escalable y con aplicación de revisiones de un modo automático. En este inicio rápido se muestra cómo usar la CLI de Azure con el complemento Aplicación web de Azure para Maven para implementar un archivo .jar o un archivo .war. Use las pestañas para cambiar entre las instrucciones para Java SE y Tomcat.

Spring app greetings in Azure App Service

Si Maven no es su herramienta de desarrollo preferida, consulte nuestros tutoriales análogos para desarrolladores de Java:

Si no tiene una suscripción a Azure, cree una cuenta gratuita de Azure antes de empezar.

Uso de Azure Cloud Shell

En Azure se hospeda Azure Cloud Shell, un entorno de shell interactivo que puede utilizar mediante el explorador. Puede usar Bash o PowerShell con Cloud Shell para trabajar con los servicios de Azure. Puede usar los comandos preinstalados de Cloud Shell para ejecutar el código de este artículo sin tener que instalar nada en su entorno local.

Para iniciar Azure Cloud Shell:

Opción Ejemplo o vínculo
Seleccione Pruébelo en la esquina superior derecha de un bloque de código. Solo con seleccionar Pruébelo no se copia automáticamente el código en Cloud Shell. Screenshot that shows an example of Try It for Azure Cloud Shell.
Vaya a https://shell.azure.com o seleccione el botón Iniciar Cloud Shell para abrir Cloud Shell en el explorador. Screenshot that shows how to launch Cloud Shell in a new window.
Seleccione el botón Cloud Shell en la barra de menús de la esquina superior derecha de Azure Portal. Screenshot that shows the Cloud Shell button in the Azure portal

Para ejecutar el código de este artículo en Azure Cloud Shell:

  1. Inicie Cloud Shell.

  2. Seleccione el botón Copiar de un bloque de código para copiar el código.

  3. Pegue el código en la sesión de Cloud Shell; para ello, seleccione Ctrl+Mayús+V en Windows y Linux, o bien Cmd+Mayús+V en macOS.

  4. Seleccione Entrar para ejecutar el código.

Creación de una aplicación Java

Clone el proyecto de ejemplo Primeros pasos de Spring Boot.

git clone https://github.com/spring-guides/gs-spring-boot

Cambie de directorio al del proyecto completado.

cd gs-spring-boot/complete

Configuración del complemento Maven

Sugerencia

El complemento Maven admite Java 17 y Tomcat 10.0. Para obtener más información sobre la compatibilidad más reciente, consulte Java 17 y Tomcat 10.0 están disponibles en Azure App Service.

El proceso de implementación en Azure App Service utilizará sus credenciales de Azure desde la CLI de Azure automáticamente. El complemento Maven se autenticará con OAuth o el inicio de sesión del dispositivo si la CLI de Azure no está instalada localmente. Para más información, consulte Autenticación con los complementos de Maven.

Ejecute el siguiente comando de Maven para configurar la implementación. Este comando le ayudará a configurar el sistema operativo de App Service, la versión de Java y la versión de Tomcat.

mvn com.microsoft.azure:azure-webapp-maven-plugin:2.5.0:config
  1. Si se le solicita la opción Suscripción, escriba el número impreso en el comienzo de línea para seleccionar el valor de Subscription adecuado.

  2. Cuando se le solicite la opción Aplicación web, presione Entrar para seleccionar la opción predeterminada, <create>.

  3. Cuando se le solicite la opción SO, especifique 1 para seleccionar Windows.

  4. Cuando se le solicite la opción javaVersion para seleccionar Java 11 escriba 2.

  5. Cuando se le solicite la opción Plan de tarifa, especifique 10 para seleccionar P1v2.

  6. Por último, presione Entrar en la última solicitud para confirmar las selecciones.

    La salida del resumen tendrá un aspecto similar al fragmento de código que se muestra a continuación.

    Please confirm webapp properties
    Subscription Id : ********-****-****-****-************
    AppName : spring-boot-1599007390755
    ResourceGroup : spring-boot-1599007390755-rg
    Region : centralus
    PricingTier : P1v2
    OS : Windows
    Java : Java 11
    Web server stack : Java SE
    Deploy to slot : false
    Confirm (Y/N)? : Y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 41.118 s
    [INFO] Finished at: 2020-09-01T17:43:45-07:00
    [INFO] ------------------------------------------------------------------------
    
  1. Cuando se le solicite la opción Suscripción, escriba el número impreso en el comienzo de línea para seleccionar el valor de Subscription adecuado.

  2. Cuando se le solicite la opción Aplicación web, presione Entrar para seleccionar la opción predeterminada, <create>.

  3. Cuando se le solicite la opción SO, presione Entrar para seleccionar Linux.

  4. Cuando se le solicite la opción javaVersion para seleccionar Java 11 escriba 2.

  5. Cuando se le solicite la opción Plan de tarifa, especifique 9 para seleccionar P1v2.

  6. Por último, presione Entrar en la última solicitud para confirmar las selecciones.

    Please confirm webapp properties
    Subscription Id : ********-****-****-****-************
    AppName : spring-boot-1599007116351
    ResourceGroup : spring-boot-1599007116351-rg
    Region : centralus
    PricingTier : P1v2
    OS : Linux
    Web server stack : Java SE
    Deploy to slot : false
    Confirm (Y/N)? : Y
    [INFO] Saving configuration to pom.
    [INFO] ------------------------------------------------------------------------
    [INFO] BUILD SUCCESS
    [INFO] ------------------------------------------------------------------------
    [INFO] Total time: 20.925 s
    [INFO] Finished at: 2020-09-01T17:38:51-07:00
    [INFO] ------------------------------------------------------------------------
    

Las configuraciones de App Service se pueden modificar directamente en el archivo pom.xml. A continuación se enumeran algunas configuraciones habituales:

Propiedad Obligatorio Descripción Versión
<schemaVersion> false Especifique la versión del esquema de configuración. Los valores admitidos son: v1, v2. 1.5.2
<subscriptionId> false Especifique el identificador de suscripción. 0.1.0+
<resourceGroup> true Grupo de recursos de Azure para la aplicación web. 0.1.0+
<appName> true El nombre de la aplicación web. 0.1.0+
<region> false Especifica la región donde se hospedará la aplicación web; el valor predeterminado es centralus. Todas las regiones válidas en la sección Regiones admitidas. 0.1.0+
<pricingTier> false El plan de tarifa de la aplicación web. El valor predeterminado es P1V2 para cargas de trabajo de producción, mientras que B2 es el mínimo recomendado para desarrollo y pruebas de Java. Para más información, consulte Precios de App Service 0.1.0+
<runtime> false Configuración del entorno en runtime. Para obtener más información, consulte Detalles de configuración. 0.1.0+
<deployment> false Configuración de implementación. Para obtener más información, consulte Detalles de configuración. 0.1.0+

Tenga cuidado con los valores de <appName> y <resourceGroup> (helloworld-1590394316693 y helloworld-1590394316693-rg en la demostración), ya que se usarán más adelante.

Implementar la aplicación

Con toda la configuración lista en el archivo pom, puede implementar la aplicación de Java en Azure con un solo comando.

mvn package azure-webapp:deploy

Una vez finalizada la implementación, la aplicación estará lista en http://<appName>.azurewebsites.net/ (http://helloworld-1590394316693.azurewebsites.net en la demostración). Abra la dirección URL con un explorador web local; debería ver

Spring app greetings in Azure App Service

¡Enhorabuena! Ha implementado su primera aplicación Java en App Service.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no va a necesitar estos recursos en el futuro, elimine el grupo de recursos del portal, para lo que debe ejecutar el siguiente comando en Cloud Shell:

az group delete --name <your resource group name; for example: helloworld-1558400876966-rg> --yes

Este comando puede tardar varios segundos en ejecutarse.

Pasos siguientes