Ejercicio: Implementación del código en App Service
En esta unidad, se implementará la aplicación web en App Service.
Implementación con implementación desde un archivo ZIP
A continuación se implementará la aplicación .NET con la implementación desde un archivo ZIP.
Primero, utilice dotnet publish para crear los archivos finales de la aplicación y zip para empaquetarlos en un archivo ZIP.
cd ~/BestBikeApp
dotnet publish -o pub
cd pub
zip -r site.zip *
Por último, lleve a cabo la implementación con az webapp deployment source config-zip. Reemplace <your-app-name> en el comando siguiente con el nombre de la aplicación web de Azure y ejecútela.
az webapp deployment source config-zip \
--src site.zip \
--resource-group <rgn>[sandbox resource group name]</rgn> \
--name <your-app-name>
La implementación tardará un par de minutos, periodo durante el que verá el resultado del estado. Un código de estado de 202 significa correcto.
Comprobación de la implementación
A continuación se desplazará a la aplicación para verla en activo. Vuelva a la pestaña abierta del explorador que contiene la página marcadora de posición y actualícela. Si la página marcadora de posición vuelve a aparecer, significa que la instancia de App Service todavía no se ha reiniciado completamente. Espere un momento y vuelva a intentarlo. Cuando actualice la página después de que la aplicación se haya reiniciado, verá la página de presentación de una aplicación web nueva de ASP.NET Core.
Ha hospedado correctamente la nueva aplicación ASP.NET Core en App Service.
Configuración de las credenciales de implementación
Algunas técnicas de implementación de App Service, incluida la que se va a usar aquí, necesitan un nombre de usuario y una contraseña que son independientes de las credenciales de Azure. Todas las aplicaciones web están preconfiguradas con un nombre de usuario y una contraseña propios que se pueden restablecer en un nuevo valor aleatorio, pero que no se pueden cambiar por algo que elija.
En lugar de buscar esos valores aleatorios para cada una de las aplicaciones, puede usar una característica de App Service denominada Credenciales de implementación de usuario para crear un nombre de usuario y una contraseña propios. Los valores que elija funcionarán para las implementaciones de todas las aplicaciones web de App Service para las que tenga permisos, incluidas las que cree en el futuro. El nombre de usuario y la contraseña que seleccione están asociados a las credenciales de Azure y pensados únicamente para uso personal, por lo que no debe compartirlos con otros usuarios. Puede cambiar el nombre de usuario y la contraseña en cualquier momento.
La manera más fácil de crear las credenciales de implementación es desde la CLI de Azure.
- Ejecute el comando siguiente en Cloud Shell para configurar las credenciales de implementación, y sustituya
<username>y<password>con los valores que elija.az webapp deployment user set --user-name <username> --password <password>
Implementación del paquete de aplicación de Java con WAR deploy
A continuación se implementará la aplicación de Java con la implementación desde un archivo WAR. WAR deploy forma parte de la API REST de Kudu, una interfaz de servicio administrativa disponible en todas las aplicaciones web de App Service, a la que se puede acceder desde HTTP. La manera más sencilla de usar la implementación desde un archivo WAR es con la utilidad curl de HTTP desde la línea de comandos.
Ejecute los comandos siguientes para implementar la aplicación web Java con WAR deploy. Reemplace <username> y <password> con el nombre de usuario y contraseña de implementación de usuario que creó anteriormente y reemplace <your-app-name> con el nombre de la aplicación web.
cd ~/helloworld/target
curl -v -X POST -u [username]:[password] https://<your-app-name>.scm.azurewebsites.net/api/wardeploy --data-binary @helloworld.war
Cuando finalice la ejecución del comando, abra una nueva pestaña del explorador y vaya a https://<your-app-name>.azurewebsites.net. Verá el mensaje de saludo de la aplicación, lo que indica que se ha implementado correctamente.
Implementación con az webapp up
A continuación se implementará la aplicación Node.js con az webapp up. Este comando empaquetará la aplicación y la enviará a la instancia de App Service, donde se compilará e implementará.
En primer lugar, es necesario recopilar información sobre el recurso de aplicación web. Ejecute los comandos siguientes para establecer las variables de shell que contienen el nombre de la aplicación, del grupo de recursos y del plan, la SKU y la ubicación. En cada uno se usan otros comandos de az para solicitar la información de Azure; az webapp up necesita estos valores para dirigirse a la aplicación web existente.
export APPNAME=$(az webapp list --query [0].name --output tsv)
export APPRG=$(az webapp list --query [0].resourceGroup --output tsv)
export APPPLAN=$(az appservice plan list --query [0].name --output tsv)
export APPSKU=$(az appservice plan list --query [0].sku.name --output tsv)
export APPLOCATION=$(az appservice plan list --query [0].location --output tsv)
Ahora, ejecute az webapp up con los valores adecuados. Asegúrese de que está en el directorio helloworld antes de ejecutar este comando.
az webapp up --name $APPNAME --resource-group $APPRG --plan $APPPLAN --sku $APPSKU --location "$APPLOCATION"
La implementación tardará unos minutos en propagarse. Podrá ver el progreso en la salida de estado. Un valor devuelto 202 significa que la implementación se ha realizado correctamente.
Comprobación de la implementación
A continuación se desplazará a la aplicación para verla en activo. La última línea de salida de az webapp up, antes del bloque de código JSON, tiene un vínculo a la aplicación. Haga clic en él para ir hasta allí en una nueva pestaña del explorador. La página tardará un momento en cargarse, ya que es la primera vez que App Service inicializa la aplicación.
A continuación, verá el mensaje de saludo de la aplicación, lo que indica que se ha implementado correctamente.
Implementación con az webapp up
A continuación se implementará la aplicación Python con az webapp up. Este comando empaquetará la aplicación y la enviará a la instancia de App Service, donde se compilará e implementará.
En primer lugar, es necesario recopilar información sobre el recurso de aplicación web. Ejecute estos comandos para establecer las variables de shell que contienen el nombre de la aplicación, el nombre del grupo de recursos, el nombre del plan, la SKU y la ubicación. Usan otros comandos de az para solicitar la información de Azure; az webapp up necesita estos valores para dirigirse a la aplicación web existente.
export APPNAME=$(az webapp list --query [0].name --output tsv)
export APPRG=$(az webapp list --query [0].resourceGroup --output tsv)
export APPPLAN=$(az appservice plan list --query [0].name --output tsv)
export APPSKU=$(az appservice plan list --query [0].sku.name --output tsv)
export APPLOCATION=$(az appservice plan list --query [0].location --output tsv)
Ahora, ejecute az webapp up con los valores adecuados. Asegúrese de que está en el directorio BestBikeApp antes de ejecutar este comando.
cd ~/BestBikeApp
az webapp up --name $APPNAME --resource-group $APPRG --plan $APPPLAN --sku $APPSKU --location "$APPLOCATION"
La implementación tardará un par de minutos, periodo durante el que verá el resultado del estado.
Comprobación de la implementación
Desplácese a la aplicación para verla en activo. En la salida, justo encima del bloque de código JSON, hay una línea en la que se indica "Puede iniciar la aplicación en..." con una dirección URL. Seleccione ese vínculo para abrir la aplicación en una nueva pestaña del explorador. La página puede tardar un momento en cargarse porque es la primera vez que App Service inicializa la aplicación.
Cuando se cargue el programa, verá el mensaje de saludo de la aplicación —, lo que indica que se ha implementado correctamente.
¿Necesita ayuda? Consulte nuestra guía de solución de problemas o notifique un problema para enviar comentarios específicos.