Creación de una aplicación de Node.js en Azure App Service en LinuxCreate a Node.js app in Azure App Service on Linux

Nota

En este artículo se implementa una aplicación en App Service en Linux.This article deploys an app to App Service on Linux. Para realizar implementaciones en App Service en Windows, consulte Creación de una aplicación de Node.js en Azure.To deploy to App Service on Windows, see Create a Node.js app in Azure.

App Service en Linux proporciona un servicio de hospedaje web muy escalable y con aplicación automática de revisiones utilizando el sistema operativo Linux.App Service on Linux provides a highly scalable, self-patching web hosting service using the Linux operating system. En esta guía de inicio rápido se explica cómo se implementa una aplicación de Node.js en App Service en Linux utilizando Cloud Shell.This quickstart shows how to deploy a Node.js app to App Service on Linux using the Cloud Shell.

Completará esta guía de inicio rápido en Cloud Shell, pero también puede ejecutar estos comandos localmente con la CLI de Azure.You'll complete this quickstart in Cloud Shell, but you can also run these commands locally with Azure CLI.

Aplicación de ejemplo que se ejecuta en Azure

Si no tiene una suscripción a Azure, cree una cuenta gratuita antes de empezar.If you don't have an Azure subscription, create a free account before you begin.

Apertura de Azure Cloud ShellOpen Azure Cloud Shell

Azure Cloud Shell es un entorno de shell interactivo que se hospeda en Azure y se utiliza a través del explorador.Azure Cloud Shell is an interactive shell environment hosted in Azure and used through your browse. Azure Cloud Shell le permite usar los shell bash o PowerShell para ejecutar una variedad de herramientas para trabajar con los servicios de Azure.Azure Cloud Shell allows you to use either bash or PowerShell shells to run a variety of tools to work with Azure services. Azure Cloud Shell viene preinstalado con los comandos para permitirle ejecutar el contenido de este artículo sin tener que instalar nada en su entorno local.Azure Cloud Shell comes pre-installed with the commands to allow you to run the content of this article without having to install anything on your local environment.

Para ejecutar cualquier código contenido en este artículo en Azure Cloud Shell, abra una sesión de Cloud Shell, utilice el botón Copiar en un bloque de código para copiar el código y péguelo en la sesión de Cloud Shell con Ctrl+Mayús+V en Windows y Linux, o Cmd+Mayús+V en macOS.To run any code contained in this article on Azure Cloud Shell, open a Cloud Shell session, use the Copy button on a code block to copy the code, and paste it into the Cloud Shell session with Ctrl+Shift+V on Windows and Linux, or Cmd+Shift+V on macOS. El texto pegado no se ejecuta automáticamente, así que presione ENTRAR para ejecutar el código.Pasted text is not automatically executed, so press Enter to run code.

Puede iniciar Azure Cloud Shell con:You can launch Azure Cloud Shell with:

Seleccione Probarlo en la esquina superior derecha de un bloque de código.Select Try It in the upper-right corner of a code block. Esto no copia automáticamente el texto en Cloud Shell.This doesn't automatically copy text to Cloud Shell. Ejemplo de Probarlo para Azure Cloud Shell
Abra shell.azure.com en el explorador.Open shell.azure.com in your browser. Botón Iniciar Cloud ShellLaunch Azure Cloud Shell button
Seleccione el botón Cloud Shell en el menú de la esquina superior derecha de Azure Portal.Select the Cloud Shell button on the menu in the upper-right corner of the Azure portal. Botón Cloud Shell en Azure Portal

Descarga del ejemploDownload the sample

En Cloud Shell, cree un directorio de inicio rápido y luego cambie a él.In the Cloud Shell, create a quickstart directory and then change to it.

mkdir quickstart

cd quickstart

A continuación, ejecute el comando siguiente para clonar el repositorio de la aplicación de ejemplo en el directorio de inicio rápido.Next, run the following command to clone the sample app repository to your quickstart directory.

git clone https://github.com/Azure-Samples/nodejs-docs-hello-world

Durante la ejecución, muestra información similar a la del ejemplo siguiente:While running, it displays information similar to the following example:

Cloning into 'nodejs-docs-hello-world'...
remote: Counting objects: 40, done.
remote: Total 40 (delta 0), reused 0 (delta 0), pack-reused 40
Unpacking objects: 100% (40/40), done.
Checking connectivity... done.

Nota

El archivo index.js de ejemplo establece el puerto de escucha en process.env.PORT.The sample index.js sets the listening port to process.env.PORT. App Service asigna esta variable de entorno.This environment variable is assigned by App Service.

Creación de una aplicación webCreate a web app

Cambie al directorio que contiene el código de ejemplo y ejecute el comando az webapp up.Change to the directory that contains the sample code and run the az webapp up command.

En el siguiente ejemplo, reemplace <app_name > por un nombre único.In the following example, replace <app_name> with a unique app name.

cd nodejs-docs-hello-world

az webapp up -n <app_name>

Este comando puede tardar varios minutos en ejecutarse.This command may take a few minutes to run. Durante la ejecución, muestra información similar a la del ejemplo siguiente:While running, it displays information similar to the following example:

Creating Resource group 'appsvc_rg_Linux_CentralUS' ...
Resource group creation complete
Creating App service plan 'appsvc_asp_Linux_CentralUS' ...
App service plan creation complete
Creating app '<app_name>' ....
Webapp creation complete
Updating app settings to enable build after deployment
Creating zip with contents of dir /home/username/quickstart/nodejs-docs-hello-world ...
Preparing to deploy and build contents to app.
Fetching changes.

Generating deployment script.
Generating deployment script.
Generating deployment script.
Running deployment command...
Running deployment command...
Running deployment command...
Deployment successful.
All done.
{
  "app_url": "https://<app_name>.azurewebsites.net",
  "location": "Central US",
  "name": "<app_name>",
  "os": "Linux",
  "resourcegroup": "appsvc_rg_Linux_CentralUS ",
  "serverfarm": "appsvc_asp_Linux_CentralUS",
  "sku": "STANDARD",
  "src_path": "/home/username/quickstart/nodejs-docs-hello-world ",
  "version_detected": "6.9",
  "version_to_create": "node|6.9"
}

El comando az webapp up realiza las acciones siguientes:The az webapp up command does the following actions:

  • Crear un grupo de recursos predeterminado.Create a default resource group.

  • Crear un plan de App Service predeterminado.Create a default app service plan.

  • Crear una aplicación con el nombre especificado.Create an app with the specified name.

  • Implementar con ZIP archivos desde el directorio de trabajo actual a la aplicación.Zip deploy files from the current working directory to the app.

Navegación hasta la aplicaciónBrowse to the app

Vaya a la aplicación implementada mediante el explorador web.Browse to the deployed application using your web browser. Reemplace <app_name> por el nombre de la aplicación.Replace <app_name> with your app name.

http://<app_name>.azurewebsites.net

El ejemplo de código de Node.js se ejecuta en App Service en Linux con una imagen integrada.The Node.js sample code is running in App Service on Linux with a built-in image.

Aplicación de ejemplo que se ejecuta en Azure

¡Enhorabuena!Congratulations! Ha implementado su primera aplicación de Node.js en App Service en Linux.You've deployed your first Node.js app to App Service on Linux.

Actualización del código y nueva implementaciónUpdate and redeploy the code

En Cloud Shell, escriba nano index.js para abrir el editor de texto nano.In the Cloud Shell, type nano index.js to open the nano text editor.

Nano index.js

Realice un pequeño cambio en el texto en la llamada a response.end:Make a small change to the text in the call to response.end:

response.end("Hello Azure!");

Guarde los cambios y salga de nano.Save your changes and exit nano. Use el comando ^O para guardar y ^X para salir.Use the command ^O to save and ^X to exit.

Ahora va a volver a implementar la aplicación.You'll now redeploy the app. Sustituya <app_name> por su aplicación.Substitute <app_name> with your app.

az webapp up -n <app_name>

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.Once deployment has completed, switch back to the browser window that opened in the Browse to the app step, and refresh the page.

Aplicación de ejemplo actualizada que se ejecuta en Azure

Administración de la nueva aplicación de AzureManage your new Azure app

Vaya a Azure Portal para administrar la aplicación que ha creado.Go to the Azure portal to manage the app you created.

En el menú izquierdo, haga clic en App Services y, luego, en el nombre de la aplicación de Azure.From the left menu, click App Services, and then click the name of your Azure app.

Navegación en el portal a la aplicación de Azure

Verá la página de información general de la aplicación.You see your app's Overview page. En ella, puede completar tareas de administración básicas como examinar, detener, iniciar, reiniciar y eliminar.Here, you can complete basic management tasks like browse, stop, start, restart, and delete.

Página de App Service en Azure Portal

El menú izquierdo proporciona distintas páginas para configurar la aplicación.The left menu provides different pages for configuring your app.

Limpieza de recursosClean up resources

En los pasos anteriores, creó recursos de Azure en un grupo de recursos.In the preceding steps, you created Azure resources in a resource group. Si no cree que vaya a necesitar estos recursos en el futuro, puede eliminar el grupo de recursos de Cloud Shell.If you don't expect to need these resources in the future, delete the resource group from the Cloud Shell. Si ha modificado la región, actualice el nombre del grupo de recursos appsvc_rg_Linux_CentralUS al grupo de recursos específico de la aplicación.If you modified the region, update the resource group name appsvc_rg_Linux_CentralUS to the resource group specific to your app.

az group delete --name appsvc_rg_Linux_CentralUS

Este comando puede tardar varios segundos en ejecutarse.This command may take a minute to run.

Pasos siguientesNext steps