.NET 執行階段

Cloud Run 函式會在包含附加程式套件、語言支援的作業系統版本,以及支援及叫用函式的 .NET Functions Framework 程式庫的環境中執行。這個環境會透過語言版本進行識別,稱為「執行階段 ID」。

函式準備

您可以直接在 Google Cloud 控制台中準備函式,也可以在本機上編寫函式並上傳。如要為 .NET 開發作業準備本機電腦,請參閱「設定 .NET 開發環境」一文。

支援的 .NET 執行階段和基本映像檔

執行階段 執行階段 ID 堆疊 執行階段基本映像檔
.NET 8 dotnet8
  • google-22 (預設)
  • google-22-full
  • google-22/dotnet8
  • google-22-full/dotnet8
  • .NET 6 dotnet6
  • google-22 (預設)
  • google-22-full
  • google-22/dotnet6
  • google-22-full/dotnet6
  • .NET Core 3 dotnet3 google-18-full google-18-full/dotnet3

    範本套件

    範本套件可協助您建立新函式。使用方法:

    1. 安裝 .NET SDK

    2. 安裝範本套件:

      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 控制台中選取執行階段,請按照下列步驟操作:

    1. 前往 Google Cloud 控制台的「Cloud Run」頁面:

      前往 Cloud Run

    2. 按一下「編寫函式」

    3. 在「Runtime」清單中,選取 .NET 執行階段版本。

    4. 按一下「Create」(建立),然後等待 Cloud Run 使用預留位置修訂版本建立服務。

    5. 主控台會將您重新導向至「來源」分頁,您可以在該分頁中查看函式的原始碼。按一下「儲存並重新部署」

    如需有關在函式部署後更新執行階段版本的詳細操作說明,請參閱「重新部署新原始碼」。

    原始碼結構

    如要讓 Cloud Run 函式找到函式定義,您的原始碼必須遵循特定結構。詳情請參閱「編寫 Cloud Run 函式」。

    指定依附元件

    .NET Cloud Run 函式會使用 Microsoft Build Engine (MSBuild) 專案檔案,這是建構和部署程序的核心。您可以在專案檔案中指定函式的依附元件。C# 的副檔名為 .csproj,F# 為 .fsproj,Visual Basic 為 .vbproj

    如要進一步瞭解依附元件和其他類型的自訂設定,請參閱「透過函式啟動類別進行自訂」。