Tecnologías de implementación en Azure Functions

Puede usar varias tecnologías diferentes para implementar el código del proyecto de Azure Functions en Azure. En este artículo se proporciona información general sobre los métodos de implementación disponibles y recomendaciones sobre el mejor método que se puede usar en cada escenario. También proporciona una lista completa de detalles clave y sobre las tecnologías de implementación subyacentes.

Métodos de implementación

La tecnología de implementación que usa para publicar código en la aplicación de funciones en Azure depende de sus necesidades específicas y del punto del ciclo de desarrollo. Por ejemplo, durante el desarrollo y las pruebas, puede implementar directamente desde la herramienta de desarrollo, como Visual Studio Code. Si la aplicación está en producción, es más probable que se publique de forma continua desde el control de código fuente o mediante una canalización de publicación automatizada, que puede incluir validación y pruebas.

En la tabla siguiente se describen los métodos de implementación disponibles para el proyecto de código.

Tipo de implementación Métodos Óptimo para...
Basado en herramientas CLI de Azure
Publicación de Visual Studio Code
Publicación de Visual Studio
Publicación de Core Tools
Implementaciones durante el desarrollo y otras implementaciones improvisadas. Implementar el código a petición mediante herramientas de desarrollo locales.
Administrado por la plataforma Centro de Despliegue (CI/CD)
Despliegues de contenedores
Implementación continua (CI/CD) desde el control de código fuente o un registro de contenedor. La plataforma de alojamiento gestiona los despliegues.
Canalizaciones externas Azure Pipelines
Acciones de GitHub
Las canalizaciones de producción que incluyen validación, pruebas y otras acciones deben ejecutarse como parte de una implementación automatizada. La canalización gestiona las implementaciones.

Use la mejor tecnología para su escenario específico. Para planes de alojamiento soportados, muchos de los métodos de despliegue utilizan zip deployment.

Disponibilidad de la tecnología de implementación

El método de implementación también depende del plan de hospedaje y del sistema operativo en el que ejecute la aplicación de funciones.

Actualmente, Functions ofrece cinco opciones para hospedar las aplicaciones de funciones:

Cada plan tiene diferentes comportamientos. No todas las tecnologías de implementación están disponibles para cada plan de hospedaje y sistema operativo. En este gráfico se proporciona información sobre las tecnologías de implementación admitidas:

Tecnología de implementación Consumo flexible Consumo Elastic Premium Dedicado Aplicaciones de contenedor
Despliegue del paquete de consumo flexible Soportado No soportado No soportado No soportado No soportado
Despliegue de ZIP No soportado Soportado Soportado Soportado No soportado
URL del paquete externo1 No soportado Soportado Soportado Soportado No soportado
Imagen del contenedor (Docker) No soportado Solo Linux Solo Linux Solo Linux Soportado
Control de código fuente No soportado Solo para Windows Soportado Soportado No soportado
Git local1 No soportado Solo para Windows Soportado Soportado No soportado
FTPS1 No soportado Solo para Windows Soportado Soportado No soportado
Edición en el portal2 No soportado Soportado Soportado Soportado No soportado
  1. No se recomiendan tecnologías de despliegue que requieran sincronizar manualmente los disparadores.
  2. La edición dentro del portal se desactiva cuando el código se despliega en tu app de funciones desde fuera del portal. Para obtener más información, incluidos los detalles de compatibilidad con idiomas para la edición en el portal, consulte Detalles de compatibilidad con idiomas.

Selecciona tu plan de alojamiento al principio de este artículo para ver las tecnologías y comportamientos de despliegue que se aplican a tu aplicación de función.

Conceptos clave

Algunos conceptos clave son fundamentales para comprender cómo funcionan las implementaciones en Azure Functions.

Almacenamiento de contenido de aplicaciones mediante plan de alojamiento

La ubicación del contenido desplegado de la app depende del plan de alojamiento y de la tecnología de despliegue:

Plan de hospedaje Almacenamiento de contenido de aplicaciones
Consumo flexible Un contenedor de implementación de blobs que se configura para la aplicación de funciones.
Consumo, Premium elástico y Dedicado El sistema de archivos de la app, un contenido compartido de Azure Files o una URL de paquete externo, dependiendo de la tecnología de despliegue.
Azure Container Apps (Aplicaciones de Contenedores de Azure) Una imagen de contenedor almacenada en un registro de contenedores.

Sincronización de desencadenadores

Cuando un despliegue añade, elimina o cambia una función o su configuración de disparador, la infraestructura de Funciones debe actualizar los metadatos del disparador para la aplicación de funciones. Esta sincronización ocurre automáticamente para muchas tecnologías de despliegue. Aunque en algunos casos habrá que sincronizar manualmente los desencadenadores.

Siempre debe sincronizar manualmente los desencadenadores al usar estas opciones de implementación:

Puede sincronizar manualmente los desencadenadores de una de estas maneras:

  • Reinicie la aplicación de funciones en el portal de Azure. El host de Functions realiza una sincronización de desencadenadores en segundo plano tras iniciar la aplicación.

  • Use el comando az rest para enviar una solicitud HTTP POST que llame a la API de syncfunctiontriggers, como en este ejemplo:

    az rest --method post --url https://management.azure.com/subscriptions/<SUBSCRIPTION_ID>/resourceGroups/<RESOURCE_GROUP>/providers/Microsoft.Web/sites/<APP_NAME>/syncfunctiontriggers?api-version=2016-08-01
    

Tenga en cuenta estas consideraciones para la operación de desencadenadores de sincronización:

  • Debe reiniciar manualmente la aplicación de funciones siempre que implemente una versión actualizada del paquete de implementación mediante la misma dirección URL del paquete externo.
  • En el caso de las aplicaciones que se ejecutan en un plan de Consumo o Elastic Premium, también debe sincronizar manualmente los desencadenadores en estos escenarios:
    • Cuando las implementaciones usan una dirección URL de paquete externo con una implementación basada en Resource Manager mediante plantillas de ARM o archivos de Bicep o Terraform.
    • Al actualizar el paquete de implementación de forma local con la misma dirección URL del paquete externo.
  • Al agregar restricciones de red a una aplicación de funciones existente, debe garantizar la conectividad con la cuenta de almacenamiento de host predeterminada establecida en la configuración de la AzureWebJobsStorage aplicación. Para obtener más información, consulte Cómo usar una cuenta de almacenamiento protegida con Azure Functions.

Compilación remota

Puede solicitar Azure Functions para realizar una compilación remota del proyecto de código durante la implementación. En estos escenarios, solicite una compilación remota en lugar de compilar localmente:

  • Va a implementar una aplicación en una aplicación de funciones basada en Linux que desarrolló en un equipo Windows. Esta situación es común en el desarrollo de aplicaciones en Python. Puede acabar con bibliotecas incorrectas al compilar el paquete de implementación localmente en Windows.
  • El proyecto tiene dependencias en un índice de paquete personalizado.
  • Quiere reducir el tamaño del paquete de implementación.

La forma en que solicita una compilación remota depende de si la aplicación se ejecuta en Azure en Windows o Linux.

Todas las aplicaciones de funciones que se ejecutan en Windows tienen un sitio de despliegue complementario. Este sitio controla gran parte de la lógica de implementación y compilación para Azure Functions.

Al implementar una aplicación en Windows, el proceso de implementación ejecuta comandos específicos del lenguaje, como dotnet restore (C#) o npm install (JavaScript).

Las consideraciones siguientes se aplican al usar compilaciones remotas durante la implementación:

  • Las compilaciones remotas son compatibles con las aplicaciones de funciones que se ejecutan en Linux en el plan de consumo. Sin embargo, las opciones de despliegue de estas aplicaciones son limitadas porque no tienen un sitio de despliegue complementario.
  • Las aplicaciones de función que funcionan en Linux en un plan Elastic Premium o en un plan Dedicado (App Service) sí tienen un sitio de despliegue complementario, pero es limitado en comparación con Windows.
  • No establezcas WEBSITE_RUN_FROM_PACKAGE cuando solicites una compilación remota. Para Linux Consumption, Elastic Premium y aplicaciones de planes dedicados, en su lugar activa la compilación remota usando los ajustes de despliegue descritos en la pestaña de Linux . El proceso de despliegue puede empaquetar la salida de la compilación y configurar la aplicación para que se ejecute desde ese paquete.
  • Es posible que tenga problemas con la compilación remota cuando se creó la aplicación antes de que la característica estuviera disponible (1 de agosto de 2019). En el caso de las aplicaciones anteriores, cree una nueva aplicación de funciones o ejecute az functionapp update --resource-group <RESOURCE_GROUP_NAME> --name <APP_NAME> para actualizar la aplicación de funciones. Puede que necesite enviar este comando dos veces para que se ejecute correctamente.

Compilación remota

Para Flex Consumption, solicitas una compilación remota pasando un parámetro de compilación remota al iniciar el despliegue. No configuras la compilación remota usando la configuración de la aplicación. Para Core Tools y Visual Studio Code, siempre se solicita una compilación remota cuando despliegas una aplicación en Python. Para obtener más información, consulte Implementación.

Almacenamiento de contenido de aplicaciones

Flex Consumption almacena el paquete actual en el contenedor de almacenamiento de despliegue configurado. Por defecto, este contenedor está en la misma cuenta que AzureWebJobsStorageusa , pero puedes configurar una cuenta de almacenamiento de despliegue diferente.

Importante

La cuenta de almacenamiento se usa para almacenar datos importantes de la aplicación, a veces, incluso, el propio código de la aplicación. Debe limitar el acceso a la cuenta de almacenamiento desde otras aplicaciones y usuarios.

Almacenamiento de contenido de aplicaciones

Dependiendo de la tecnología de despliegue, el contenido de tu app puede almacenarse en el sistema de archivos de la app, en un recurso compartido de contenido de Azure Files o en una URL de paquete externo. Revisa dónde se almacena el contenido de la app para cada tecnología de despliegue en la siguiente sección.

Importante

La cuenta de almacenamiento se usa para almacenar datos importantes de la aplicación, a veces, incluso, el propio código de la aplicación. Debe limitar el acceso a la cuenta de almacenamiento desde otras aplicaciones y usuarios.

Redes virtuales protegidas

Cuando tu app de funciones tiene activados los endpoints privados y el acceso a la red pública está deshabilitado, el endpoint de despliegue no es accesible públicamente. Las herramientas de despliegue push, incluyendo Core Tools, Visual Studio Code, CLI de Azure, Acciones de GitHub y Azure Pipelines, envían paquetes a este punto final. La máquina, runner o agente que realiza el despliegue debe tener tanto conectividad de red como resolución DNS para el punto final privado de despliegue.

Puedes proporcionar esta conectividad de estas maneras:

El recurso de despliegue puede estar en la misma red virtual o en una red que tenga conectividad de enrutamiento y DNS al punto final privado, como una red virtual peered.

Los despliegues de paquetes basados en Resource Manager no envían el paquete desde el cliente que inicia hasta el endpoint de despliegue. En su lugar, el servicio de despliegue recupera el paquete de la URL proporcionada en el recurso de despliegue. La URL del paquete y el almacenamiento de despliegue deben ser accesibles para el servicio de despliegue. Para Flex Consumption, consulta Desplegar usando Bicep o una plantilla de Azure Resource Manager.

Para obtener más información sobre cómo configurar la aplicación de funciones en una red virtual, consulte Cómo configurar Azure Functions con una red virtual.

Almacenamiento de contenido y redes de aplicaciones

Azure Functions en Azure Container Apps despliega tu aplicación como una imagen de contenedor. La imagen se almacena en un registro de contenedores, y la red se gestiona mediante el entorno Contenedores Apps. Para más información, consulta Azure Functions on Azure Container Apps overview and Networking in Azure Container Apps.

Comportamiento de despliegue según el plan de alojamiento

Los siguientes métodos de despliegue se aplican al plan de alojamiento que hayas elegido. Para comparar tecnologías en todos los planes, consulte la tabla de disponibilidad de tecnología de despliegue .

Despliegue del paquete de consumo flexible

El despliegue de paquetes es la única tecnología de despliegue de código soportada para aplicaciones en un plan Flex Consumption. El proceso de despliegue almacena un paquete de .zip listo para ejecutar en el contenedor de despliegue de la app, y la aplicación de función se ejecuta directamente desde ese paquete.

Cómo utilizarlo: Despliegue usando la función de publicación de Visual Studio Code, o desde la línea de comandos usando Azure Functions Core Tools o el CLI de Azure. La tarea de Azure DevOps y la acción de GitHub seleccionan de forma similar el comportamiento correcto de despliegue de paquetes cuando detectan una aplicación de Flex Consumption.

Al crear una aplicación "Flex Consumption", debe especificar un contenedor de almacenamiento de implementación (blob) y también un método de autenticación para él. De forma predeterminada, se usa la misma cuenta de almacenamiento que la conexión de AzureWebJobsStorage, con un cadena de conexión como método de autenticación. Por lo tanto, la configuración de implementación se configura durante el tiempo de creación de la aplicación sin necesidad de la configuración de la aplicación.

Cuándo usarlo: Usa la implementación de paquetes para todas las implementaciones de código de Flex Consumption. No se soporta ninguna otra tecnología de despliegue de código.

Dónde se almacena el contenido de la aplicación: al crear una aplicación de función consumo flexible, se especifica un contenedorde almacenamiento de implementación. El servicio de despliegue almacena el paquete procesado y listo para ejecutar en este contenedor. Las herramientas de despliegue push envían primero el paquete de origen al punto final de despliegue de la app; no se suben directamente al contenedor de despliegue. Para cambiar la ubicación de almacenamiento, abre la página de configuración de despliegue en el portal de Azure o utiliza la CLI de CLI de Azure.

La API subyacente de la plataforma a veces se identifica como OneDeploy. Las definiciones de infraestructura como código exponen esta implementación a través del nombre literal /onedeploy del recurso. No necesitas seleccionar ni configurar esta API cuando la despliegues usando herramientas de desarrollo compatibles o proveedores CI/CD.

Sugerencia

Hay una herramienta de diagnóstico de Despliegue de Consumo Flexible disponible en el portal de Azure. Abra la aplicación Flex Consumption, seleccione Diagnosticar y resolver problemas y busque Flex Consumption Deployment. Esta herramienta muestra información detallada sobre las implementaciones, incluido el historial de implementación, el estado del paquete y las recomendaciones de solución de problemas.

Despliegue de ZIP

La implementación mediante ZIP es la tecnología de implementación predeterminada y recomendada para las aplicaciones de funciones en los planes Consumption, Elastic Premium y Dedicated (App Service). El resultado final es un paquete de .zip listo para ejecutarse en el que se ejecuta la aplicación de funciones. Difiere de la dirección URL del paquete externo en que la plataforma es responsable de la compilación remota y el almacenamiento del contenido de la aplicación.

Cómo usarlo: Despliega usando tu herramienta cliente preferida: Visual Studio Code, Visual Studio, o desde la línea de comandos usando Azure Functions Core Tools o la CLI de Azure. La tarea de Azure DevOps y la acción de GitHub utilizan de forma similar el despliegue ZIP.

Cuando usas despliegue ZIP, puedes configurar tu aplicación para que se ejecute desde paquete. Para ejecutarla desde el paquete, defina el valor de configuración de la aplicación WEBSITE_RUN_FROM_PACKAGE en 1. Recomendamos el despliegue de ZIP. Ofrece tiempos de carga más rápidos para tus aplicaciones, y es el predeterminado para Visual Studio Code, Visual Studio y la CLI de Azure.

Cuándo utilizarlo: El despliegue de ZIP es la tecnología de despliegue predeterminada y recomendada para aplicaciones de función en los planes Windows Consumption, Windows and Linux Elastic Premium y Windows and Linux App Service (Dedicado).

Dónde se almacena el contenido de la app: El contenido de una aplicación de un despliegue ZIP se almacena por defecto en el sistema de archivos, que Azure puede respaldar mediante Azure Files desde la cuenta de almacenamiento que especifiques al crear la aplicación de funciones. En el plan de Consumo para Linux, el contenido de la aplicación se guarda en un blob de la cuenta de almacenamiento especificada por la configuración de la aplicación AzureWebJobsStorage, y esta configuración WEBSITE_RUN_FROM_PACKAGE toma el valor de la URL del blob.

Dirección URL del paquete externo

Usa una URL de paquete externa cuando quieras controlar manualmente cómo se realizan los despliegues. Eres responsable de subir un paquete de .zip listo para ejecutar que contenga el contenido de tu app a almacenamiento en blob y de referenciar esta URL externa como configuración de aplicación en tu app funcional. Cada vez que tu app se reinicia, recupera el paquete, lo monta y se ejecuta desde el paquete.

Cómo se debe usar: agregue WEBSITE_RUN_FROM_PACKAGE a la configuración de la aplicación. El valor de esta configuración debe ser una dirección URL de blob que apunte a la ubicación del paquete específico que quiere que se ejecute la aplicación. Puede agregar la configuración en el portal o mediante el CLI de Azure.

Si usas Azure Blob Storage, tu aplicación de funciones puede acceder al contenedor ya sea mediante una conexión basada en identidad gestionada o con una firma de acceso compartido (SAS). La opción que elija afecta al tipo de dirección URL que usa como valor para WEBSITE_RUN_FROM_PACKAGE. Se recomienda la identidad administrada para la seguridad general y, dado que los tokens de SAS expiran y deben mantenerse manualmente.

Siempre que implemente el archivo de paquete al que hace referencia una aplicación de funciones, deberá sincronizar manualmente los desencadenadores, incluida la implementación inicial. Al cambiar el contenido del archivo de paquete y no la propia dirección URL, también deberá reiniciar la aplicación de funciones para sincronizar desencadenadores. Para los pasos de configuración, consulte Ejecutar desde una URL de paquete externo.

Cuándo usarlo: la dirección URL del paquete externo es el único método de implementación admitido para las aplicaciones que se ejecutan en el plan de Consumo para Linux cuando no desea que se produzca una compilación remota. Este método también es la tecnología de implementación recomendada al crear la aplicación sin Azure Files. En el caso de las aplicaciones escalables que se ejecutan en Linux, debe considerar el hospedaje plan de Consumo flexible.

Dónde se almacena el contenido de la aplicación: Es responsable de cargar el contenido de la aplicación en Blob Storage. Puedes usar cualquier cuenta de Blob Storage, aunque se recomienda Azure Blob Storage.

Contenedor de Docker

Puede implementar una aplicación de funciones que se ejecuta en un contenedor de Linux.

Cómo usarlo:Crear las funciones en un contenedor de Linux luego implementar el contenedor en un plan Premium o Dedicado en Azure Functions u otro host de contenedor. Use el Azure Functions Core Tools para crear un Dockerfile personalizado para el proyecto que use para compilar una aplicación de funciones en contenedor. Puede usar el contenedor en las siguientes implementaciones:

Cuándo se debe usar: use la opción de contenedor Docker cuando quiera tener más control sobre el entorno de Linux donde se ejecuta la aplicación de funciones y donde se aloja el contenedor. Este mecanismo de implementación solo está disponible para las funciones que se ejecutan en Linux.

Dónde se almacena el contenido de la aplicación: El contenido de la aplicación se almacena en el registro de contenedor especificado como parte de la imagen.

Control de código fuente

Puede habilitar la integración continua entre la aplicación de funciones y un repositorio de código fuente. Al habilitar el control de código fuente, una actualización del código en el repositorio de código fuente conectado desencadena la implementación del código más reciente del repositorio. Para obtener más información, consulte el Despliegue continuo para Azure Functions.

Uso: la manera más fácil de configurar la publicación desde el control de código fuente es desde el Centro de implementación en el área Funciones del portal. Para obtener más información, consulte implementación continua para Azure Functions.

Cuándo se debe usar: El uso del control de código fuente es el procedimiento recomendado para los equipos que colaboran en sus aplicaciones de funciones. El control de código fuente es una buena opción de implementación que permite el uso de canalizaciones de implementación más sofisticadas. Normalmente, se habilita el control de código fuente en una ranura de ensayo, que puede intercambiar en producción después de la validación de las actualizaciones del repositorio. Para obtener más información, consulte Ranuras de implementación de Azure Functions.

Dónde se almacena el contenido de la aplicación: El sistema de control de código fuente almacena el contenido de la aplicación. El sistema de archivos de la aplicación almacena contenido de la aplicación que se clonado y compilado localmente, y que podría estar respaldado por Azure Files desde la cuenta de almacenamiento especificada al crear la aplicación de funciones.

Git local

Use Git local para insertar código desde la máquina local para Azure Functions mediante Git.

Cómo usarlo: Siga las instrucciones de Implementación de Git local en Azure App Service.

Cuándo usarlo: Para reducir la posibilidad de errores, evite usar métodos de implementación que requieran el paso adicional de sincronizar manualmente los desencadenadores. Use la implementación ZIP siempre que sea posible.

Dónde se almacena el contenido de la aplicación: El sistema de archivos almacena el contenido de la aplicación. El sistema de archivos podría estar respaldado por Azure Files desde la cuenta de almacenamiento que especifiques al crear la app de funciones.

FTPS

Puedes usar FTPS para transferir archivos directamente a Azure Functions, pero no uses este método de despliegue. Cuando no planees usar FTPS, desactívalo. Para obtener información sobre cómo en el portal de Azure, consulte Enforce FTPS.

Cómo usarlo: Siga las instrucciones de configuración de implementación de FTPS para obtener la dirección URL y las credenciales que puede usar para implementar en la aplicación de funciones mediante FTPS.

Cuándo usarlo: Para reducir la posibilidad de errores, evite usar métodos de implementación que requieran el paso adicional de sincronizar manualmente los desencadenadores. Use la implementación ZIP siempre que sea posible.

Dónde se almacena el contenido de la aplicación: El contenido de la aplicación se almacena en el sistema de archivos. Las implementaciones ftp/FTPS producen un error cuando el sistema de archivos de la aplicación está respaldado por Azure Files en la cuenta de almacenamiento de host predeterminada. Se produce un error en FTP/FTPS con Azure Files como almacenamiento montado debido a las limitaciones de FTP.

Edición en el portal

En el editor basado en el portal, puede editar directamente los archivos que se encuentran en la aplicación de funciones (en esencia, se implementan cada vez que guarde los cambios).

Cómo usarlo: Para editar las funciones en el portal Azure, debe crear las funciones en el portal. Para conservar un único origen de confianza, el uso de cualquier otro método de implementación hace que la función sea de solo lectura e impide la edición del portal de forma continuada. Para volver a un estado en el que puede editar los archivos en el portal de Azure, puede volver manualmente al modo de edición a Read/Write y quitar cualquier configuración de aplicación relacionada con la implementación (como WEBSITE_RUN_FROM_PACKAGE).

Cuándo usarlo: El portal es una buena manera de empezar a trabajar con Azure Functions. Debido a las limitaciones de desarrollo en el portal de Azure, debería usar una de las siguientes herramientas cliente para el trabajo de desarrollo más avanzado.

Where app content is stored: El contenido de la aplicación se almacena en el sistema de archivos, que puede estar respaldado por Azure Files de la cuenta de almacenamiento que especifique al crear la aplicación de funciones.

Despliegue de imágenes de contenedores

Azure Functions en Azure Container Apps implementa su código como una imagen de contenedor. Puedes desplegar desde un proyecto de código usando la experiencia gestionada de Aplicaciones Contenedor, o desplegar una imagen personalizada cuando necesites control sobre el contenido de la imagen. Para más información, consulta Crear una aplicación de funciones en Azure Container Apps usando código y Azure Functions en Azure Container Apps Overview.

Comportamientos de implementación

Cuando despliegas actualizaciones en el código de tu app de función, el comportamiento de despliegue depende de tu plan de alojamiento.

Actualmente, las funciones en ejecución se detienen cuando despliegas nuevo código. Una vez finalizada la implantación, el nuevo código se carga y comienza a procesar las solicitudes. Este comportamiento de terminación forzosa se conoce como estrategia de recreación. Para implementaciones con un tiempo de inactividad casi nulo, utiliza ranuras de implementación.

Consulte Mejorar el rendimiento y la confiabilidad de Azure Functions para aprender a escribir funciones sin estado y defensivas.

El comportamiento por defecto utiliza la estrategia de recreación, que detiene la ejecución de funciones durante el despliegue. Flex Consumption soporta dos estrategias de actualización del sitio. Puede configurar actualizaciones graduales para implementaciones de tiempo de inactividad cero.

Azure Container Apps gestiona las actualizaciones de aplicaciones utilizando revisiones. Para más información sobre cómo se controlan cómo reciben el tráfico las nuevas revisiones, consulte Actualizar y desplegar cambios en Azure Container Apps.

Ranuras de implementación

Flex Consumption no admite slots de implementación. Para despliegues sin tiempo de inactividad, configura actualizaciones continuas.

Ranuras de implementación

Al implementar la aplicación de funciones en Azure, puede implementar en una ranura de implementación independiente en lugar de directamente en producción. La implementación en una ranura de implementación y, a continuación, el intercambio a producción después de la comprobación es la manera recomendada de configurar la implementación continua.

La forma de implementar en una ranura dependerá de la herramienta de implementación específica que use. Por ejemplo, cuando uses Azure Functions Core Tools, incluye la --slot opción de indicar el nombre de una ranura específica para el func azure functionapp publish comando.

Para más información sobre las ranuras de despliegue, consulte la documentación de las ranuras de despliegue de Azure Functions.

Pasos siguientes

Lea los siguientes artículos para obtener más información sobre cómo implementar las aplicaciones de funciones: