Entorno de ejecución de .NET

Información general

Tu función de Cloud Run se ejecuta en un entorno que consta de una versión del sistema operativo, además de paquetes complementarios, compatibilidad con idiomas y la biblioteca Functions Framework, que admite e invoca tu función. Este entorno se identifica por la versión de idioma y se conoce como el tiempo de ejecución.

Para obtener información sobre los entornos de ejecución en general y saber qué versión de Ubuntu usa cada entorno de ejecución de .NET, consulta el entorno de ejecución de Cloud Functions.

Paquete de plantilla

El paquete de plantillas te ayuda a crear funciones. Para utilizarlo:

  1. Instala el SDK de.NET.

  2. Instala el paquete de plantilla:

    dotnet new install Google.Cloud.Functions.Templates
    

Se proporcionan plantillas para los tres tipos de funciones en C# (el valor predeterminado), F# y Visual Basic. Al crear un proyecto a partir de una plantilla, especifica -lang f# para crear un proyecto de F# o -lang vb para crear un proyecto de Visual Basic. Para obtener más información, consulta estos artículos:

Selecciona una versión de .NET Functions Framework

Las diferentes versiones del framework de funciones de .NET admiten diferentes tiempos de ejecución. La versión 1 es compatible con .NET Core 3.1 y versiones posteriores, y las plantillas se definen de forma predeterminada en .NET Core 3.1. La versión 2 es compatible con .NET 6 y versiones posteriores, y las plantillas se definen de forma predeterminada en .NET 6.

Para actualizar un proyecto que use la versión 1 de .NET Functions Framework, edite el archivo del proyecto (o use Visual Studio) para actualizar todas las dependencias que empiecen por Google.Cloud.Functions a la versión más reciente y defina el framework de destino como .NET 6.

Selecciona tu tiempo de ejecución

Las funciones de Cloud Run admiten varias versiones de .NET, que se indican en la página Compatibilidad con el tiempo de ejecución. Cuando implementes tu función, debes especificar un tiempo de ejecución de .NET que corresponda al framework de destino en el archivo de tu proyecto (MyFunction.csproj o similar). Para especificar tu entorno de ejecución de .NET, sigue estos pasos:

Si usas Google Cloud CLI, especifica el tiempo de ejecución con el parámetro --runtime. La marca --entry-point especifica el nombre de clase completo (FQN). Por ejemplo:

gcloud functions deploy NAME --no-gen2 --entry-point FQN --no-gen2 --runtime dotnet6 --trigger-http

Para obtener más información sobre los parámetros de despliegue, consulta Desplegar una función de Cloud Run.

Preparación de la función

Puedes escribir una función en tu máquina local y subirla. Para preparar tu máquina local para el desarrollo de .NET, consulta el artículo Configurar un entorno de desarrollo de .NET.

La biblioteca que invoca tu función es .NET Functions Framework.

Estructura del código fuente

Para que las funciones de Cloud Run puedan encontrar la definición de tu función, cada entorno de ejecución tiene ciertos requisitos de estructura para tu código fuente. Para obtener más información, consulta el artículo sobre cómo escribir funciones de Cloud Run.

Especificar dependencias

Puedes especificar las dependencias de tu función añadiéndolas a un archivo de proyecto. Para obtener más información, consulta Especificar dependencias en .NET.

Siguientes pasos