Inicio rápido: Implementación de una aplicación web de ASP.NET

En este inicio rápido, aprenderá a crear e implementar su primera aplicación web de ASP.NET en Azure App Service. App Service admite varias versiones de aplicaciones .NET y proporciona un servicio de hospedaje web muy escalable y con aplicación de revisiones. Las aplicaciones web de ASP.NET son multiplataforma y se pueden hospedar tanto en Linux como en Windows. Cuando termine, tendrá un grupo de recursos de Azure que consta de un plan de hospedaje de App Service y una aplicación web implementada.

Nota

Se recomienda Azure PowerShell para crear aplicaciones en la plataforma de hospedaje de Windows. Para crear aplicaciones en Linux, use otra herramienta, como la CLI de Azure.

Prerrequisitos

Si ya ha instalado Visual Studio 2022:

  1. Para instalar las actualizaciones más recientes de Visual Studio, seleccione Ayuda > Buscar actualizaciones.
  2. Para agregar la carga de trabajo, seleccione Herramientas > Obtener herramientas y características.

Instale el SDK de .NET 6.0 más reciente.

Instale el SDK de .NET 6.0 más reciente.

Instale el SDK de .NET 6.0 más reciente.

Creación de una aplicación web de ASP.NET

  1. Abra Visual Studio y seleccione Crear un proyecto.

  2. En Crear un proyecto, busque y elija Aplicación web ASP.NET Core y, después, seleccione Siguiente.

  3. En Configurar el nuevo proyecto, asigne a la aplicación el nombre MyFirstAzureWebApp y seleccione Siguiente.

    Visual Studio: Configuración de una aplicación web de ASP.NET 6.0.

  4. Seleccione .NET Core 6.0 (soporte técnico a largo plazo) .

  5. Asegúrese de que en Tipo de autenticación está seleccionada la opción Ninguno. Seleccione Crear.

    Visual Studio: Información adicional al seleccionar .NET Core 6.0.

  6. En el menú de Visual Studio, seleccione Depurar > Iniciar sin depurar para ejecutar la aplicación web localmente.

    Visual Studio: ASP.NET Core 6.0 se ejecuta localmente.

  1. En la ventana de terminal, cree una carpeta denominada MyFirstAzureWebApp y ábrala en Visual Studio Code.

    mkdir MyFirstAzureWebApp
    code MyFirstAzureWebApp
    
  2. En Visual Studio Code, abra una ventana de terminal escribiendo Ctrl + `.

  3. En el terminal de Visual Studio Code, cree una aplicación web de .NET con el comando dotnet new webapp.

    dotnet new webapp -f net6.0
    
  4. En Visual Studio Code, desde el Terminal ejecute la aplicación localmente mediante el comando dotnet run.

    dotnet run --urls=https://localhost:5001/
    
  5. Abra un explorador web y vaya a la aplicación en https://localhost:5001.

    Verá que la aplicación web de ASP.NET Core 6.0 de la plantilla se muestra en la página.

    Visual Studio Code: ejecute .NET 6.0 en un explorador local.

  1. Abra una ventana de terminal en la máquina en un directorio de trabajo. Cree una aplicación web de .NET con el comando dotnet new webapp y vaya a los directorios de la aplicación recién creada.

    dotnet new webapp -n MyFirstAzureWebApp --framework net6.0
    cd MyFirstAzureWebApp
    
  2. En la misma sesión de terminal, ejecute la aplicación localmente mediante el comando dotnet run.

    dotnet run --urls=https://localhost:5001/
    
  3. Abra un explorador web y vaya a la aplicación en https://localhost:5001.

    Verá que la aplicación web de ASP.NET Core 6.0 de la plantilla se muestra en la página.

    Visual Studio Code: ASP.NET Core 6.0 en un explorador local.

Publicación de la aplicación web

Para publicar la aplicación web, primero debe crear y configurar una nueva instancia de App Service en la que pueda publicar la aplicación.

Como parte de la configuración de la instancia de App Service, creará:

  • Un nuevo grupo de recursos que contendrá todos los recursos de Azure para el servicio.
  • Un plan de hospedaje que especifique la ubicación, el tamaño y las características de la granja de servidores web que hospeda la aplicación.

Siga estos pasos para crear los recursos de App Service y publicar el proyecto:

  1. En el Explorador de soluciones, haga clic con el botón derecho en el proyecto MyFirstAzureWebApp y seleccione Publicar.

  2. En Publicar, seleccione Azure y, después, Siguiente.

    Visual Studio: publique la aplicación web y use Azure como destino.

  3. Elija el valor de Destino específico, sea Azure App Service (Linux) o Azure App Service (Windows) . A continuación, haga clic en Siguiente.

    Importante

    Cuando el destino sea ASP.NET Framework 4.8, use Azure App Service (Windows) .

  4. Las opciones dependen de si ya ha iniciado sesión en Azure y de si tiene una cuenta de Visual Studio vinculada a una cuenta de Azure. Seleccione Agregar una cuenta o Iniciar sesión para iniciar sesión en la suscripción de Azure. Si ya ha iniciado sesión, seleccione la cuenta que desee.

    Visual Studio: seleccione iniciar sesión en el cuadro de diálogo de Azure.

  5. A la derecha de App Service instances (Instancias de App Service), seleccione + .

    Visual Studio: cuadro de diálogo de la aplicación del nuevo App Service.

  6. En Suscripción, acepte la suscripción que aparece o seleccione otra en la lista desplegable.

  7. En Grupo de recursos, seleccione Nuevo. En Nuevo nombre de grupo de recursos, escriba myResourceGroup y seleccione Aceptar.

  8. En Plan de hospedaje, seleccione Nuevo.

  9. En el cuadro de diálogo Plan de hospedaje: Crear nuevo, escriba los valores especificados en la tabla siguiente:

    Configuración Valor sugerido Descripción
    Plan de hospedaje MyFirstAzureWebAppPlan Nombre del plan de App Service.
    Ubicación Oeste de Europa El centro de datos donde se hospeda la aplicación web.
    Tamaño Gratis Plan de tarifa determina las características de hospedaje.

    Creación de un nuevo plan de hospedaje

  10. En Nombre, escriba un nombre de aplicación único que incluya solo los caracteres válidos, que son a-z, A-Z, 0-9 y -. Puede aceptar el nombre único generado automáticamente. La dirección URL de la aplicación web es http://<app-name>.azurewebsites.net, donde <app-name> es el nombre de la aplicación.

  11. Seleccione Crear para crear los recursos de Azure.

    Visual Studio: cuadro de diálogo de creación de recursos de la aplicación.

    Una vez completado el asistente, los recursos de Azure se crean automáticamente y está listo para publicar el proyecto de ASP.NET Core.

  12. En el cuadro de diálogo Publicar, asegúrese de que la nueva aplicación de App Service esté seleccionada en la instancia de App Service y, a continuación, seleccione Finalizar. Visual Studio crea automáticamente un perfil de publicación para la aplicación de App Service seleccionada.

  13. En la página Publicar, seleccione Publicar. Cuando vea un mensaje de advertencia, haga clic en Continuar.

    Visual Studio compila, empaqueta y publica la aplicación en Azure y, luego, la inicia en el explorador predeterminado.

    Verá que la aplicación web de ASP.NET Core 6.0 se muestra en la página.

    Visual Studio: Aplicación web de ASP.NET Core 6.0 en Azure.

  1. En Visual Studio Code, abra la paleta de comandos, Ctrl+Shift+P.

  2. Busque y seleccione "Azure App Service: Implementar en aplicación web".

  3. Responda a los mensajes como se indica a continuación:

    1. Seleccione MyFirstAzureWebApp como la carpeta que se va a implementar.
    2. Seleccione Agregar configuración cuando se le solicite.
    3. Si se le pide, inicie sesión en su cuenta de Azure.
    4. Seleccione su suscripción.
    5. Seleccione Create new Web App...Advanced (Crear aplicación web...Avanzada).
    6. En Enter a globally unique name, (Especificar un nombre único global) use un nombre que sea único en todo Azure (los caracteres válidos son a-z, 0-9 y - ). Un buen patrón es usar una combinación del nombre de la empresa y un identificador de la aplicación.
    7. Seleccione Crear nuevo grupo de recursos y escriba un nombre, por ejemplo, myResourceGroup.
    8. Cuando se le pida, seleccione una pila en tiempo de ejecución:
    • En el caso de .NET 6.0, seleccione .NET 6
    • En el caso de .NET Framework 4.8, seleccione ASP.NET v4.8
    1. Seleccione un sistema operativo (Windows o Linux).
      • En el caso de .NET Framework 4.8, Windows se seleccionará implícitamente.
    2. Seleccione una ubicación cerca de usted.
    3. Seleccione Crear un nuevo plan de App Service, especifique un nombre y seleccione el plan de tarifa F1 Gratis.
    4. Seleccione Omitir por ahora para el recurso de Application Insights.
  4. En el elemento emergente Implementar siempre en el área de trabajo "MyFirstAzureWebApp" en <app-name>" , seleccione . De este modo, siempre que se encuentre en la misma área de trabajo, Visual Studio Code se implementará en la misma aplicación de App Service todas las veces.

  5. Cuando se complete la publicación, seleccione Examinar sitio web en la notificación y seleccione Abrir cuando se le solicite.

    Verá que la aplicación web de ASP.NET Core 6.0 se muestra en la página.

    Visual Studio Code: Aplicación web de ASP.NET Core 6.0 en Azure.

  1. Inicie sesión en su cuenta de Azure mediante el comando az login y siguiendo la indicación:

    az login
    
  2. Implemente el código en el directorio MyFirstAzureWebApp local, para lo que debe usar el comando az webapp up:

    az webapp up --sku F1 --name <app-name> --os-type <os>
    
    • Si no se reconoce el comando az, asegúrese de tener instalada la CLI de Azure, como se describe en los requisitos previos.
    • Reemplace <app-name> por un nombre que sea único en todo Azure (los caracteres válidos son a-z, 0-9 y - ). Un buen patrón es usar una combinación del nombre de la empresa y un identificador de la aplicación.
    • El argumento --sku F1 crea la aplicación web en el plan de tarifa Gratis. Omita este argumento para usar un nivel Premium más rápido, lo que supondrá un costo por hora.
    • Reemplace <os> por linux o windows. Debe usar windows cuando el destino sea ASP.NET Framework 4.8.
    • Opcionalmente, incluya el argumento --location <location-name>, donde <location-name> es una región de Azure disponible. Puede recuperar una lista de las regiones permitidas para su cuenta de Azure mediante la ejecución del comando az account list-locations.

    El comando puede tardar varios minutos en completarse. Mientras se ejecuta, proporciona mensajes sobre cómo crear el grupo de recursos, el plan de App Service y la aplicación de hospedaje, configurar el registro y, a continuación, realizar la implementación del archivo ZIP. A continuación, genera un mensaje con la dirección URL de la aplicación:

    You can launch the app at http://<app-name>.azurewebsites.net
    
  3. Abra un explorador web y vaya a dicha dirección:

    Verá que la aplicación web de ASP.NET Core 6.0 se muestra en la página.

    CLI: Aplicación web de ASP.NET Core 6.0 en Azure.

Nota

Se recomienda Azure PowerShell para crear aplicaciones en la plataforma de hospedaje de Windows. Para crear aplicaciones en Linux, use otra herramienta, como la CLI de Azure.

  1. Inicie sesión en su cuenta de Azure mediante el comando Connect-AzAccount y siguiendo la indicación:

    Connect-AzAccount
    
  1. Cree una aplicación mediante el comando New-AzWebApp:

    New-AzWebApp -Name <app-name> -Location westeurope
    
    • Reemplace <app-name> por un nombre que sea único en todo Azure (los caracteres válidos son a-z, 0-9 y - ). Un buen patrón es usar una combinación del nombre de la empresa y un identificador de la aplicación.
    • Opcionalmente, incluya el parámetro -Location <location-name>, donde <location-name> es una región de Azure disponible. Puede recuperar una lista de las regiones permitidas para su cuenta de Azure mediante la ejecución del comando Get-AzLocation.

    El comando puede tardar varios minutos en completarse. Mientras se ejecuta, crea un grupo de recursos, un plan de App Service y el recurso de App Service.

  2. En la carpeta raíz de la aplicación, prepare la aplicación MyFirstAzureWebApp local para la implementación mediante el comando dotnet publish:

    dotnet publish --configuration Release
    
  3. Cambie al directorio de versión y cree un archivo ZIP a partir del contenido:

    cd bin\Release\net6.0\publish
    Compress-Archive -Path * -DestinationPath deploy.zip
    
  4. Publique el archivo ZIP en la aplicación de Azure mediante el comando Publish-AzWebApp:

    Publish-AzWebApp -ResourceGroupName myResourceGroup -Name <app-name> -ArchivePath (Get-Item .\deploy.zip).FullName -Force
    

    Nota

    -ArchivePath necesita la ruta de acceso completa del archivo ZIP.

  5. Abra un explorador web y vaya a dicha dirección:

    Verá que la aplicación web de ASP.NET Core 6.0 se muestra en la página.

    CLI: Aplicación web de ASP.NET Core 6.0 en Azure.

Actualización de la aplicación y nueva implementación

Siga estos pasos para actualizar y volver a implementar la aplicación web:

  1. En el Explorador de soluciones, en el proyecto, abra index.cshtml.

  2. Reemplace el primer elemento <div> por el código siguiente:

    <div class="jumbotron">
        <h1>.NET 💜 Azure</h1>
        <p class="lead">Example .NET app to Azure App Service.</p>
    </div>
    

    Guarde los cambios.

  3. Para volver a realizar la implementación en Azure, haga clic con el botón derecho en el proyecto MyFirstAzureWebApp en el Explorador de soluciones y seleccione Publicar.

  4. En la página de resumen Publicar, seleccione Publicar.

    Cuando se completa la publicación, Visual Studio inicia un explorador en la dirección URL de la aplicación web.

    Verá que la aplicación web de ASP.NET Core 6.0 actualizada se muestra en la página.

    Visual Studio: Aplicación web de ASP.NET Core 6.0 actualizada en Azure.

  1. Abra index.cshtml.

  2. Reemplace el primer elemento <div> por el código siguiente:

    <div class="jumbotron">
        <h1>.NET 💜 Azure</h1>
        <p class="lead">Example .NET app to Azure App Service.</p>
    </div>
    

    Guarde los cambios.

  3. En Visual Studio Code, abra la paleta de comandos, Ctrl+Shift+P.

  4. Busque y seleccione "Azure App Service: Implementar en aplicación web". Recuerde que le dijo a Visual Studio Code que recordara la aplicación para implementar el área de trabajo en un paso anterior.

  5. Cuando se le solicite, seleccione Implementar.

  6. Cuando se complete la publicación, seleccione Examinar sitio web en la notificación y seleccione Abrir cuando se le solicite.

    Verá que la aplicación web de ASP.NET Core 6.0 actualizada se muestra en la página.

    Visual Studio Code: Aplicación web de ASP.NET Core 6.0 actualizada en Azure.

En el directorio local, abra el archivo Index.cshtml. Reemplace el primer elemento <div>:

<div class="jumbotron">
    <h1>.NET 💜 Azure</h1>
    <p class="lead">Example .NET app to Azure App Service.</p>
</div>

Guarde los cambios y vuelva a implementar la aplicación con el comando az webapp up:

ASP.NET Core 6.0 es multiplataforma, en función de la implementación anterior, reemplace <os> por linux o windows.

az webapp up --os-type <os>

Este comando utiliza valores que se almacenan en caché de forma local en el archivo .azure/config, incluidos el nombre de la aplicación, el grupo de recursos y el plan de App Service.

Una vez que la implementación haya finalizado, vuelva a cambiar la ventana del explorador que se abrió en el paso Navegación hasta la aplicación y actualice la vista.

Verá que la aplicación web de ASP.NET Core 6.0 actualizada se muestra en la página.

CLI: Aplicación web de ASP.NET Core 6.0 actualizada en Azure.

  1. En el directorio local, abra el archivo Index.cshtml. Reemplace el primer elemento <div>:

    <div class="jumbotron">
        <h1>.NET 💜 Azure</h1>
        <p class="lead">Example .NET app to Azure App Service.</p>
    </div>
    
  2. En la carpeta raíz de la aplicación, prepare la aplicación MyFirstAzureWebApp local para la implementación mediante el comando dotnet publish:

    dotnet publish --configuration Release
    
  3. Cambie al directorio de versión y cree un archivo ZIP a partir del contenido:

    cd bin\Release\net6.0\publish
    Compress-Archive -Path * -DestinationPath deploy.zip
    
  4. Publique el archivo ZIP en la aplicación de Azure mediante el comando Publish-AzWebApp:

    Publish-AzWebApp -ResourceGroupName myResourceGroup -Name <app-name> -ArchivePath (Get-Item .\deploy.zip).FullName -Force
    

    Nota

    -ArchivePath necesita la ruta de acceso completa del archivo ZIP.

  5. Una vez que la implementación haya finalizado, vuelva a cambiar la ventana del explorador que se abrió en el paso Navegación hasta la aplicación y actualice la vista.

    Verá que la aplicación web de ASP.NET Core 6.0 actualizada se muestra en la página.

    CLI: Aplicación web de ASP.NET Core 6.0 actualizada en Azure.

Administración de la aplicación de Azure

Para administrar la aplicación web, vaya a Azure Portal y busque y seleccione App Services.

Azure Portal: seleccione la opción App Services.

En la página App Services, seleccione el nombre de la aplicación web.

Azure Portal: la página de App Services con una aplicación web de ejemplo seleccionada.

La página Información general de la aplicación web contiene opciones para la administración básica como examinar, detener, iniciar, reiniciar y eliminar. El menú izquierdo proporciona varias páginas para configurar la aplicación.

Azure Portal: página de información general de App Service.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no prevé necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.

  1. En la página Información general de la aplicación web de Azure Portal, seleccione el vínculo myResourceGroup en Grupo de recursos.
  2. En la página del grupo de recursos, asegúrese de que los recursos que aparecen son los que quiere eliminar.
  3. Seleccione Eliminar, escriba myResourceGroup en el cuadro de texto y luego seleccione Eliminar.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no prevé necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.

  1. En la página Información general de la aplicación web de Azure Portal, seleccione el vínculo myResourceGroup en Grupo de recursos.
  2. En la página del grupo de recursos, asegúrese de que los recursos que aparecen son los que quiere eliminar.
  3. Seleccione Eliminar, escriba myResourceGroup en el cuadro de texto y luego seleccione Eliminar.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si prevé que no necesitará estos recursos en el futuro, elimine el grupo de recursos ejecutando el siguiente comando en Cloud Shell:

az group delete --name myResourceGroup

Este comando puede tardar varios segundos en ejecutarse.

Limpieza de recursos

En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si prevé que no necesitará estos recursos en el futuro, ejecute el siguiente comando de PowerShell para eliminar el grupo de recursos:

Remove-AzResourceGroup -Name myResourceGroup

Este comando puede tardar varios segundos en ejecutarse.

Pasos siguientes

En este inicio rápido, ha creado e implementado una aplicación web de ASP.NET en Azure App Service.

Pase al siguiente artículo para aprender a crear una aplicación de .NET Core y conectarla a una instancia de SQL Database:

Configure ASP.NET Core app (Configuración de una aplicación de ASP.NET Core)