Implementación de una aplicación web en un servidor web NGINX que se ejecuta en una máquina virtual Linux (clásico)

Azure DevOps Services | Azure DevOps Server 2022 | Azure DevOps Server 2019 | TFS 2018

Nota:

Si desea implementar la aplicación en una máquina virtual Linux mediante canalizaciones YAML, consulte Implementación en una máquina virtual Linux.

Aprenda a usar Azure Pipelines clásico para compilar e implementar la aplicación web en un servidor web NGINX que se ejecuta en una máquina virtual Linux.

Requisitos previos

Requisitos previos de la máquina virtual Linux

  • Si no tiene ninguna máquina virtual Linux con un servidor web Nginx, siga los pasos descritos en este inicio rápido para crear una en Azure.

Obtención del código

Si no tiene ningún repositorio, use el siguiente proyecto de ejemplo junto con este tutorial:

https://github.com/MicrosoftDocs/pipelines-javascript

Compilación de la aplicación

Configuración de un grupo de implementación

Los grupos de implementación facilitan la organización de los servidores que quiera usar para hospedar la aplicación. Un grupo de implementación es una colección de máquinas con un agente de Azure Pipelines en cada una de ellas. Cada máquina interactúa con Azure Pipelines para coordinar la implementación de la aplicación.

  1. Abra una sesión SSH en la máquina virtual Linux. Puede hacerlo con el botón Cloud Shell situado en la esquina superior derecha de Azure Portal.

    Captura de pantalla que muestra el botón Azure Cloud Shell

  2. Ejecute el siguiente comando para iniciar la sesión. Reemplace el marcador de posición por la dirección IP de la máquina virtual:

    ssh <publicIpAddress>
    
  3. Ejecute el siguiente comando para instalar las dependencias necesarias para configurar el agente de compilación y de versión en una máquina virtual Linux. Para obtener más información, consulte Agentes de Linux autohospedados.

    sudo apt-get install -y libunwind8 libcurl3
    
  4. En el portal web de Azure DevOps, seleccione Canalizaciones y, después, Grupos de implementación.

  5. Seleccione Agregar un grupo de implementación (o Nuevo si ya tiene grupos de implementación).

  6. Escriba un nombre para el grupo, como myNginx, y seleccione Crear.

  7. Seleccione Linux para el tipo de destino que se va a registrar y asegúrese de que esté marcada la opción Usar un token de acceso personal en el script para la autenticación. Seleccione Copiar el script en el Portapapeles. Este script instalará y configurará un agente en la máquina virtual.

  8. De nuevo en la sesión SSH de Azure Portal, pegue y ejecute el script.

  9. Cuando se le pida que configure etiquetas para el agente, presione Intro para omitir el paso.

  10. Espere a que finalice el script y que aparezca el mensaje Agente de Azure Pipelines iniciado. Escriba "q" para salir del editor de archivos y vuelva al símbolo del sistema del shell.

  11. De nuevo en el portal de Azure DevOps, en la página Grupos de implementación, abra el grupo de implementación myNginx. Seleccione la pestaña Destinos y compruebe que aparece la máquina virtual.

Creación de una canalización de versión

  1. Seleccione Canalizaciones>Versiones y, después, Nueva canalización.

  2. Seleccione Trabajo vacío.

  3. Seleccione Agregar un artefacto para vincular el artefacto de compilación. Seleccione Compilar y, a continuación, el proyecto y el origen en el menú desplegable. Seleccione Agregar cuando haya terminado.

  4. Seleccione el icono Implementación continua y haga clic en el botón de alternancia para habilitar el desencadenador de implementación continua. Agregue la rama principal como filtro de rama de compilación.

    Captura de pantalla que muestra cómo configurar el desencadenador de implementación continua

  5. Seleccione Tareas y, a continuación, el Trabajo de agente y quítelo.

    Captura de pantalla que muestra cómo quitar el trabajo de agente

  6. Seleccione el icono de los puntos suspensivos y, a continuación, Agregar un trabajo de grupo de implementación. Las tareas que agregará a este trabajo se ejecutarán en cada servidor del grupo de implementación.

    Captura de pantalla que muestra cómo agregar un trabajo de grupo de implementación

  7. Seleccione el grupo de implementación que creó antes en el menú desplegable Grupo de implementación.

    Captura de pantalla que muestra cómo seleccionar el grupo de implementación.

  8. Seleccione + para agregar una nueva tarea. Busque Bash y seleccione Agregar para agregarlo a la canalización.

    Captura de pantalla que muestra cómo agregar la tarea Bash.

  9. Seleccione el botón Examinar para agregar la ruta de acceso del archivo de script deploy.sh. Consulte aquí un script de implementación de nodeJS de ejemplo.

    Captura de pantalla que muestra cómo agregar la ruta de acceso del script.

  10. Cuando haya terminado, seleccione Guardar.

    Captura de pantalla que muestra cómo guardar una canalización de versión.

Implementación de la aplicación

  1. Seleccione Versiones y, a continuación, Crear una versión.

  2. Asegúrese de que la versión del artefacto que quiere usar está seleccionada y, a continuación, seleccione Crear.

  3. Seleccione el enlace de versión que hay en el mensaje de la barra de información. Por ejemplo: "Se ha puesto en cola la versión Versión-1".

  4. Seleccione el vínculo de estado de Fases para ver los registros de implementación.

  5. Una vez completada la versión, vaya a la aplicación y compruebe su contenido.