Cloud Run functions 函数在由操作系统版本、插件软件包、语言支持以及支持和调用函数的 .NET Functions 框架库组成的环境中运行。此环境由语言版本进行标识,称为运行时 ID。
函数准备
您可以直接在 Google Cloud 控制台中准备函数,也可以在本地机器上编写函数并上传该函数。如需准备本地机器以用于 .NET 开发,请参阅设置 .NET 开发环境。
支持的 .NET 运行时和基础映像
运行时 | 运行时 ID | 堆栈 | 运行时基础映像 |
---|---|---|---|
.NET 8 | dotnet8 |
|
|
.NET 6 | dotnet6 |
|
|
.NET Core 3 | dotnet3 | google-18-full | google-18-full/dotnet3 |
模板软件包
模板软件包可帮助您创建新函数。要使用此应用,请执行以下操作:
安装 .NET SDK。
安装模板软件包:
dotnet new install Google.Cloud.Functions.Templates
为 C#(默认)、F# 和 Visual Basic 三种类型的函数提供了模板。通过模板创建新项目时,指定 -lang f#
以创建 F# 项目,或指定 -lang vb
以创建 Visual Basic 项目。
选择运行时
部署函数时,您必须指定与项目文件(MyFunction.csproj
或类似文件)中的目标框架对应的 .NET 运行时。您可以在部署期间为函数选择一个受支持的 .NET 运行时。
您可以使用 Google Cloud 控制台或 gcloud CLI 选择运行时版本。点击相应标签页即可获得有关所选工具的使用说明:
gcloud
部署函数时,使用 --base-image
标志为函数指定 .NET 基础映像。例如:
gcloud run deploy FUNCTION \
--source . \
--function FUNCTION_ENTRYPOINT \
--base-image dotnet8
您需要进行如下替换:
将 FUNCTION 替换为您要部署的函数的名称。您可以完全省略此参数,但如果省略它,系统将提示您输入名称。
将 FUNCTION_ENTRYPOINT 替换为源代码中函数的入口点。这是 Cloud Run 在您的函数运行时执行的代码。此标志的值必须是源代码中存在的函数名称或完全限定类名称。
如需详细了解如何使用 gcloud CLI 部署函数,请参阅在 Cloud Run 中部署函数。
控制台
您可以在 Google Cloud 控制台中创建或更新 Cloud Run 函数时选择运行时版本。如需详细了解如何部署函数,请参阅在 Cloud Run 中部署函数。
如需在创建函数时在 Google Cloud 控制台中选择运行时,请按照以下步骤操作:
在 Google Cloud 控制台中,前往 Cloud Run 页面:
点击编写函数。
在运行时列表中,选择一个 .NET 运行时版本。
点击创建,然后等待 Cloud Run 使用占位符修订版创建服务。
控制台会将您重定向到来源标签页,您可以在其中查看函数的源代码。点击保存并重新部署。
如需详细了解如何在部署函数后更新运行时版本,请参阅重新部署新的源代码。
源代码结构
为了让 Cloud Run functions 找到函数的定义,源代码必须遵循特定结构。如需了解详情,请参阅编写 Cloud Run functions 函数。
指定依赖项
.NET Cloud Run functions 函数使用 Microsoft Build Engine (MSBuild) 项目文件,这些文件是构建和部署过程的核心。您可以在项目文件中为函数指定依赖项。对于 C#,文件扩展名为 .csproj
;对于 F#,文件扩展名为 .fsproj
;对于 Visual Basic,文件扩展名为 .vbproj
。
如需详细了解依赖项和其他类型的自定义,请参阅通过 Functions 启动类进行自定义。