設定 Cloud Run 和 Cloud Run 函式服務

使用下列環境變數,設定部署至 Cloud Run 或 Cloud Run 函式時的服務行為。

瞭解如何在容器映像檔中設定這些環境變數

如要進一步瞭解特定語言的設定,請參閱:

Cloud Run 和 Cloud Run 函式環境變數

下列設定可支援為應用程式和函式建構服務。請參閱下方的其他 Cloud Run 函式環境變數

GOOGLE_ENTRYPOINT

指定容器執行時要執行的指令。這相當於 Dockerfile 中的 entrypoint

  • 示例:
    • Java:java -jar target/myjar.jar
    • PHP:php -S 0.0.0.0:8080 index.php
    • Python:gunicorn -p :8080 main:app

GOOGLE_RUNTIME

強制執行階段啟用。如果執行階段 Buildpack 映像檔出現在多個群組中,則所有群組都會使用第一個群組中的 Buildpack 映像檔。

Node.js 範例:指定 nodejs 會強制 Node.js 執行階段 Buildpack 選擇加入。

GOOGLE_RUNTIME_VERSION

指定要安裝的執行階段版本。針對 .NET,指定 .NET SDK 版本。

範例:

  • Go:1.14.1
  • Java:8
  • Node.js: 13.7.0
  • .NET:3.1.301

GOOGLE_BUILDABLE

針對 Go、Java、Dart 和 .NET 執行階段:指定可建構單元的路徑。

Go 範例:指定 ./maindir 會建構根目錄為 maindir 的套件。

GOOGLE_BUILD_ARGS

適用於 Java (Maven 和 Gradle) 和 .NET 執行階段:將引數附加至建構指令。

Java 範例:指定 -Pprod 會執行 mvn clean package ... -Pprod

GOOGLE_MAVEN_BUILD_ARGS

針對使用 Maven 外掛程式的 Java 執行階段:使用您指定的建構指令覆寫預設 Maven 指令。

如未指定 GOOGLE_MAVEN_BUILD_ARGS,則預設會執行下列指令:

mvn clean package --batch-mode -DskipTests -Dhttp.keepAlive=false

範例:指定 GOOGLE_MAVEN_BUILD_ARGS="clean package: 會執行 mvn clean package 指令。

GOOGLE_GRADLE_BUILD_ARGS

針對使用 Gradle 外掛程式的 Java 執行階段:使用您指定的建構指令覆寫預設 Gradle 指令。

如未指定 GOOGLE_GRADLE_BUILD_ARGS,則預設會執行下列指令:

gradle clean assemble -x test --build-cache

範例:指定 GOOGLE_GRADLE_BUILD_ARGS="clean assemble" 會執行 gradle clean assemble 指令。

GOOGLE_DEVMODE

針對 Skaffold:啟用開發模式 Buildpack。使用即時本機開發功能,針對原始碼變更觸發自動容器重建作業。您必須安裝 Skaffold 並執行 skaffold dev

  • 支援的值:trueTrue1

GOOGLE_CLEAR_SOURCE

針對函式和 Go 或 Java 應用程式:在應用程式建構完成後清除來源。如果應用程式依附靜態檔案 (例如 Go 範本),設定這個變數可能會導致應用程式出現異常行為。

支援的值:trueTrue1

其他 Cloud Run 函式環境變數

下列設定僅適用於以 Functions Framework 和 Cloud Run 函式為依據,建構為函式的原始碼。如要進一步瞭解這些設定選項,請參閱合約

GOOGLE_FUNCTION_TARGET

  • 指定要呼叫的匯出函式名稱,以回應要求。
  • 範例: myFunction 會導致函式架構叫用同名的函式。

GOOGLE_FUNCTION_SIGNATURE_TYPE

  • 指定函式使用的簽章。
  • 範例: httpeventcloudevent

GOOGLE_FUNCTION_SOURCE

  • 視語言而定,指定包含函式來源的目錄或檔案名稱。
  • (僅適用於部分語言,請參閱特定語言的說明文件)。
  • 範例:Python 的 function.py