設定 Cloud Run 和 Cloud Run 函式服務

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

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

如要瞭解特定語言的設定詳細資料,請參閱:

Cloud Run 和 Cloud Run functions 環境變數

下列設定支援為應用程式和函式建構服務。如要查看更多 Cloud Run functions 環境變數,請參閱其他 Cloud Run functions 環境變數

GOOGLE_ENTRYPOINT

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

範例:

Cloud Run 來源部署作業

  • Java:java -jar target/myjar.jar
  • PHP:php -S 0.0.0.0:8080 index.php
  • Python:

Python 建構套件會為 Cloud Run 來源部署作業設定預設進入點。如果是 Python 3.13 以上版本,Python 建構包會根據 requirements.txt 檔案中的網路服務設定,設定進入點。如果您未在 requirements.txt 檔案中指定網頁伺服器或架構,或是使用 Python 3.12 版和更早版本,Python 建構包會將預設進入點設為 gunicorn -b :8080 main:app。詳情請參閱「建構 Python 應用程式」。

所有其他部署項目

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

GOOGLE_RUNTIME

強制執行階段加入。如果執行階段建構套件映像檔出現在多個群組中,系統會使用第一個群組中的建構套件映像檔。

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

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:啟用開發模式建構包。 使用即時本機開發功能,在原始碼變更時觸發自動容器重建作業。您必須安裝 Skaffold 並執行 skaffold dev

  • 支援的值:trueTrue1

GOOGLE_CLEAR_SOURCE

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

支援的值:trueTrue1

其他 Cloud Run functions 環境變數

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

GOOGLE_FUNCTION_TARGET

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

GOOGLE_FUNCTION_SIGNATURE_TYPE

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

GOOGLE_FUNCTION_SOURCE

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