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.
Como alternativa, puede implementar una aplicación web de ASP.NET como parte de un contenedor Windows o Linux en App Service.
Prerrequisitos
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Visual Studio 2022 con la carga de trabajo de ASP.NET y desarrollo web
Si ya ha instalado Visual Studio 2022:
- Para instalar las actualizaciones más recientes de Visual Studio, seleccione Ayuda>Buscar actualizaciones.
- Para agregar la carga de trabajo, seleccione Herramientas>Obtener herramientas y características.
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Visual Studio Code.
- La extensión Azure Tools.
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- LaCLI de Azure.
- El SDK de .NET SDK (incluye el runtime y la CLI).
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Azure PowerShell.
- El SDK de .NET SDK (incluye el runtime y la CLI).
- Una cuenta de Azure con una suscripción activa. Cree una cuenta gratuita.
- Cuenta de GitHub Crear una cuenta gratuita.
Creación de una aplicación web de ASP.NET
Abra Visual Studio y seleccione Crear un proyecto.
En Crear un proyecto, busque y seleccione Aplicación web ASP.NET Core y, después, seleccione Siguiente.
En Configurar el nuevo proyecto, asigne a la aplicación el nombre MyFirstAzureWebApp y seleccione Siguiente.
Seleccione .NET 6.0 (compatibilidad a largo plazo).
Asegúrese de que en Tipo de autenticación se ha seleccionado la opción Ninguno. Seleccione Crear.
En el menú de Visual Studio, seleccione Depurar>Iniciar sin depurar para ejecutar la aplicación web localmente.
En la ventana de terminal, cree una carpeta denominada MyFirstAzureWebApp y ábrala en Visual Studio Code.
mkdir MyFirstAzureWebApp code MyFirstAzureWebApp
En Visual Studio Code, abra una ventana de terminal escribiendo
Ctrl
+`
.En el terminal de Visual Studio Code, cree una aplicación web de .NET mediante el comando
dotnet new webapp
.dotnet new webapp -f net6.0
En Visual Studio Code, desde el Terminal ejecute la aplicación localmente mediante el comando
dotnet run
.dotnet run --urls=https://localhost:5001/
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.
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
En la misma sesión de terminal, ejecute la aplicación localmente mediante el comando
dotnet run
.dotnet run --urls=https://localhost:5001/
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.
En este paso se bifurcará un proyecto de demostración que se va a implementar.
- Vaya a la aplicación de ejemplo de .NET 6.0.
- Seleccione el botón Fork (Bifurcación) en la esquina superior derecha de la página de GitHub.
- Seleccione el propietario y deje el nombre del repositorio predeterminado.
- Seleccione Crear bifurcación.
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:
En el Explorador de soluciones, haga clic con el botón derecho en el proyecto MyFirstAzureWebApp y seleccione Publicar.
En Publicar, seleccione Azure y, después, Siguiente.
Elija el valor de Destino específico, sea Azure App Service (Linux) o Azure App Service (Windows) . Después, seleccione Siguiente.
Importante
Cuando el destino sea ASP.NET Framework 4.8, use Azure App Service (Windows) .
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.
A la derecha de App Service instances (Instancias de App Service), seleccione +.
En Suscripción, acepte la suscripción que aparece o seleccione otra en la lista desplegable.
En Grupo de recursos, seleccione Nuevo. En Nuevo nombre de grupo de recursos, escriba myResourceGroup y seleccione Aceptar.
En Plan de hospedaje, seleccione Nuevo.
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. 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 eshttp://<app-name>.azurewebsites.net
, donde<app-name>
es el nombre de la aplicación.Seleccione Crear para crear los recursos de Azure.
Una vez que se completa el asistente, los recursos de Azure se crean automáticamente, por lo que ya se puede publicar el proyecto de ASP.NET Core.
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, después, seleccione Finalizar. Visual Studio crea automáticamente un perfil de publicación para la aplicación de App Service seleccionada.
En la página Publicar, seleccione Publicar. Si ve un mensaje de advertencia, seleccione 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.
En Visual Studio Code, abra la paleta de comandos, Ctrl+Shift+P.
Busque y seleccione "Azure App Service: Implementar en aplicación web".
Responda a los mensajes como se indica a continuación:
- Seleccione MyFirstAzureWebApp como la carpeta que se va a implementar.
- Seleccione Agregar configuración cuando se le solicite.
- Si se le pide, inicie sesión en su cuenta de Azure.
- Seleccione su suscripción.
- Seleccione Create new Web App...Advanced (Crear aplicación web...Avanzada).
- 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. - Seleccione Crear nuevo grupo de recursos y escriba un nombre, por ejemplo,
myResourceGroup
. - 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
- Seleccione un sistema operativo (Windows o Linux).
- En el caso de .NET Framework 4.8, Windows se seleccionará implícitamente.
- Seleccione una ubicación cerca de usted.
- Seleccione Crear un nuevo plan de App Service, especifique un nombre y seleccione el plan de tarifaF1 Gratis.
- Seleccione Omitir por ahora para el recurso de Application Insights.
En el elemento emergente Always deploy the workspace "MyFirstAzureWebApp" to <app-name>" (Implementar siempre el área de trabajo "MyFirstAzureWebApp" en
"), seleccione Sí para que Visual Studio Code se implemente en la misma aplicación de App Service cada vez que se encuentra en esa área de trabajo. 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.
Inicie sesión en su cuenta de Azure mediante el comando
az login
y siguiendo la indicación:az login
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 sona-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 tarifaGratis. Omita este argumento para usar un nivel Premium más rápido, lo que supondrá un costo por hora. - Reemplace
<os>
porlinux
owindows
. Debe usarwindows
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 comandoaz account list-locations
.
El comando puede tardar unos 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. Luego, se muestra un mensaje con la dirección URL de la aplicación:
You can launch the app at http://<app-name>.azurewebsites.net
- Si no se reconoce el comando
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.
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.
Inicie sesión en su cuenta de Azure mediante el comando
Connect-AzAccount
y siguiendo la indicación:Connect-AzAccount
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 sona-z
,0-9
y-
). Una combinación del nombre de la empresa y un identificador de la aplicación es un buen patró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 comandoGet-AzLocation
.
El comando puede tardar unos minutos en completarse. Mientras se ejecuta, crea un grupo de recursos, un plan de App Service y el recurso de App Service.
- Reemplace
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
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
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.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.
Escriba app services en la búsqueda. En Servicios, seleccione App Services.
En la página App Services, seleccione + Crear.
En la pestaña Aspectos básicos, en Detalles del proyecto, asegúrese de que esté seleccionada la suscripción correcta y, a continuación, seleccione Crear nuevo grupo de recursos. Escriba myResourceGroup para el nombre.
En Detalles de instancia:
- En Nombre, escriba un nombre único global para la aplicación web.
- En Publicar, seleccione Código.
- En Pila en tiempo de ejecución, seleccione .NET 6 (LTS).
- Seleccione un sistema operativo y una región desde la que quiera atender la aplicación.
En Plan de servicio de aplicaciones, seleccione Crear nuevo plan de App Service. Escriba myAppServicePlan como nombre. Para cambiar al nivel Gratis, seleccione Cambiar tamaño, elija la pestaña Desarrollo/pruebas, seleccione F1 y seleccione el botón Aplicar situado en la parte inferior de la página.
Seleccione el botón Siguiente: Implementación> situado en la parte inferior de la página.
En la pestaña Implementación, en Configuración de Acciones de GitHub , asegúrese de que Implementación continua esté como Habilitar.
En Detalles de Acciones de GitHub, autentíquese con su cuenta de GitHub y seleccione las siguientes opciones:
- En Organización, seleccione la organización en la que ha bifurcado el proyecto de demostración.
- En Repositorio, seleccione el proyecto dotnetcore-docs-hello-world.
- En Rama, seleccione maestra.
Seleccione el botón Revisar y crear de la parte inferior de la página.
Después de que se ejecute la validación, seleccione el botón Crear en la parte inferior de la página.
Una vez finalizada la implementación, seleccione Ir al recurso.
Vaya a la aplicación implementada mediante el explorador web en la dirección URL
http://<app-name>.azurewebsites.net
.
Actualización de la aplicación y nueva implementación
Siga estos pasos para actualizar y volver a implementar la aplicación web:
En el Explorador de soluciones, en el proyecto, abra index.cshtml.
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.
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.
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.
Abra index.cshtml.
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.
En Visual Studio Code, abra la paleta de comandos, Ctrl+Shift+P.
Busque y seleccione "Azure App Service: Implementar en aplicación web".
Cuando se le solicite, seleccione Implementar.
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.
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.
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>
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
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
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.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.
Vaya a la bifurcación de GitHub del código de ejemplo.
En la página del repositorio, presione
.
para iniciar Visual Studio Code dentro del explorador.Nota
La dirección URL cambiará de GitHub.com a GitHub.dev. Esta característica solo funciona con repositorios que tienen archivos. No funciona en repositorios vacíos.
Abra index.cshtml.
Index.cshtml se encuentra en la carpeta
Pages
.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.
En el menú Control de código fuente, seleccione el botón Almacenar cambios provisionalmente para almacenar provisionalmente el cambio.
Escriba un mensaje de confirmación como
We love Azure
. A continuación, seleccione Confirmar e insertar.Una vez que la implementación haya finalizado, vuelva a la ventana del explorador que abrió en el paso Navegación hasta la aplicación y actualice la página.
Verá que la aplicación web de ASP.NET Core 6.0 actualizada se muestra en la página.
Administración de la aplicación de Azure
Para administrar la aplicación web, vaya a Azure Portal y busque y seleccione App Services.
En la página App Services, seleccione el nombre de la aplicación web.
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.
Limpieza de recursos
En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no cree que vaya a necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.
- En la página Información general de la aplicación web de Azure Portal, seleccione el vínculo myResourceGroup en Grupo de recursos.
- En la página del grupo de recursos, asegúrese de que los recursos que aparecen son los que quiere eliminar.
- 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 cree que vaya a necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.
- En la página Información general de la aplicación web de Azure Portal, seleccione el vínculo myResourceGroup en Grupo de recursos.
- En la página del grupo de recursos, asegúrese de que los recursos que aparecen son los que quiere eliminar.
- 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.
Limpieza de recursos
En los pasos anteriores, creó recursos de Azure en un grupo de recursos. Si no cree que vaya a necesitar estos recursos en el futuro, puede eliminarlos mediante la eliminación del grupo de recursos.
- En la página Información general de la aplicación web de Azure Portal, seleccione el vínculo myResourceGroup en Grupo de recursos.
- En la página del grupo de recursos, asegúrese de que los recursos que aparecen son los que quiere eliminar.
- Seleccione Eliminar, escriba myResourceGroup en el cuadro de texto y luego seleccione Eliminar.
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)