設定工作站集區的環境變數

本頁說明如何為 Cloud Run 工作站集區設定環境變數。

變更任何設定都會建立新的修訂版本。除非您明確做出更新,變更這項設定,否則後續的修訂版本也會自動取得這個設定。

必要的角色

如要取得設定及部署 Cloud Run 工作站集區所需的權限,請要求管理員授予下列 IAM 角色:

如需與 Cloud Run 相關的 IAM 角色和權限清單,請參閱 Cloud Run IAM 角色Cloud Run IAM 權限。如果 Cloud Run 工作人員集區與Google Cloud API (例如 Cloud 用戶端程式庫) 介接,請參閱服務身分設定指南。如要進一步瞭解如何授予角色,請參閱部署權限管理存取權

設定環境變數

您可以使用Google Cloud 主控台、Google Cloud CLI 或 Terraform,為 Cloud Run 工作人員集區設定環境變數:

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 從選單中選取「工作站集區」,然後按一下「部署容器」,設定新的工作站集區。如要設定現有工作站集區,請按一下該集區,然後按一下「編輯並部署新修訂版本」

  3. 如要設定新的工作站集區,請填寫初始工作站集區頁面,然後按一下「容器、磁碟區、網路與安全性」,展開工作站集區設定頁面。

  4. 按一下「容器」分頁標籤。

    圖片

    • 在「變數和密鑰」分頁中,按一下「新增變數」新增環境變數,然後在「名稱」和「值」欄位中指定變數名稱。如要進一步瞭解如何設定多個環境變數或逸出特殊字元,請參閱「設定多個環境變數」。
  5. 按一下 [Create] (建立) 或 [Deploy] (部署)

gcloud

如要在部署工作站集區時指定環境變數,請使用 --set-env-vars 旗標:

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --set-env-vars KEY1=VALUE1,KEY2=VALUE2

更改下列內容:

  • WORKER_POOL:工作站集區名稱
  • KEY1=VALUE1,KEY2=VALUE2:以逗號分隔的變數名稱和值清單
  • IMAGE_URL:參照包含工作站集區的容器映像檔,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest

如要進一步瞭解如何設定多個環境變數或逸出特殊字元,請參閱「設定多個環境變數」。

Terraform

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

resource "google_cloud_run_v2_worker_pool" "default" {
  name     = "WORKER_POOL"
  location = "REGION"
  launch_stage = "BETA"

  template {
    containers {
      image = "IMAGE_URL"
      env {
        name  = "KEY1"
        value = "VALUE1"
      }
      env {
        name  = "KEY2"
        value = "VALUE2"
      }
    }
  }
}

更改下列內容:

  • WORKER_POOL:工作站集區的名稱。
  • REGION:區域,例如 Google Cloud europe-west1
  • IMAGE_URL:參照包含工作站集區的容器映像檔,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • KEY1VALUE1:環境變數和值。視需要新增更多變數和值。

在容器中設定預設環境變數

您可以在 Dockerfile 中使用 ENV 陳述式,為環境變數設定預設值:

ENV KEY1=VALUE1,KEY2=VALUE2

優先順序:容器變數與工作站集區變數

如果您在容器中設定預設環境變數,並在 Cloud Run 工作站集區中設定同名環境變數,則工作站集區中設定的值會優先採用。

設定多個環境變數

您可以使用 .env 檔案或 --set-env-vars 標記設定多個環境變數。

使用 .env 檔案設定多個環境變數

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 從選單中選取「工作站集區」,然後按一下「部署容器」,設定新的工作站集區。如要設定現有工作站集區,請按一下該集區,然後按一下「編輯並部署新修訂版本」

  3. 如要設定新的工作站集區,請填寫初始工作站集區頁面,然後按一下「容器、磁碟區、網路與安全性」,展開工作站集區設定頁面。

  4. 按一下「容器」分頁標籤。

    圖片

    • 在「Variables & Secrets」(變數與密鑰) 分頁中,按一下「Add Variable」(新增變數),然後將 .env 檔案的內容貼到「Name」(名稱) 欄位。Cloud Run 會自動填入「值」欄位,並為您在 .env 檔案中定義的每個鍵/值組合建立新變數。
  5. 按一下 [Create] (建立) 或 [Deploy] (部署)

gcloud

如要從 .env 檔案指定多個環境變數,請執行下列指令:

gcloud beta run worker-pools deploy WORKER_POOL --image IMAGE_URL --env-vars-file=ENV_FILE_PATH

更改下列內容:

  • WORKER_POOL:工作站集區的名稱。
  • IMAGE_URL:參照包含工作站集區的容器映像檔,例如 us-docker.pkg.dev/cloudrun/container/worker-pool:latest
  • ENV_FILE_PATH.env 檔案的路徑。

使用 --set-env-vars 旗標設定多個環境變數

如果您有多個環境變數無法以 KEY1=VALUE1,KEY2=VALUE2 格式列出,可以重複使用 --set-env-vars 旗標:
   [...]
   --set-env-vars "KEY1=VALUE1" \
   --set-env-vars "KEY2=VALUE2" \
   --set-env-vars "KEY3=VALUE3"

逸出逗號字元

由於半形逗號字元 , 用於分割環境變數,如果環境變數的值包含半形逗號字元,您需要指定其他分隔符號字元 (例如 @),藉此逸出這些分隔符號:
--set-env-vars "^@^KEY1=value1,value2,value3@KEY2=..."

更新環境變數

您可以更新現有工作站集區的執行階段環境變數。這是一種非破壞性方法,可變更或新增執行階段環境變數,但不會刪除這些變數。

您可以在 Google Cloud 控制台、Google Cloud CLI 或 Terraform 中更新環境變數:

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 從選單中選取「Worker pools」(工作站集區),然後按一下要更新的工作站集區,再點選「Edit and deploy new revision」(編輯並部署新修訂版本)

  3. 按一下「容器、磁碟區、網路與安全性」,展開工作站集區設定頁面。

  4. 按一下「變數與密鑰」分頁標籤。

    圖片

  5. 找出要更新的環境變數,然後在「Name」(名稱) 和「Value」(值) 欄位中,為變數指定不同名稱或值。

  6. 按一下 [Deploy] (部署)

gcloud

如要更新現有工作站集區的環境變數,請使用 --update-env-vars 旗標:

gcloud beta run worker-pools update WORKER_POOL --update-env-vars KEY1=VALUE1,KEY2=VALUE2

更改下列內容:

  • WORKER_POOL:工作站集區名稱
  • KEY1=VALUE1,KEY2=VALUE2:以逗號分隔的變數名稱和值清單

Terraform

如要更新現有工作站集區的環境變數,請開啟與工作站集區對應的 main.tf 檔案,然後編輯名稱和值變數。接著,執行指令來套用 Terraform 設定。

如要瞭解如何套用或移除 Terraform 設定,請參閱「基本 Terraform 指令」。

刪除環境變數

控制台

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 從選單中選取「Worker pools」(工作站集區),然後按一下要更新的工作站集區,再點選「Edit and deploy new revision」(編輯並部署新修訂版本)

  3. 按一下「容器、磁碟區、網路與安全性」,展開工作站集區設定頁面。

  4. 按一下「變數與密鑰」分頁標籤。

    圖片

  5. 找到要刪除的環境變數,然後按一下「Value」(值) 欄位右側的垃圾桶圖示,即可刪除該環境變數。

  6. 按一下 [Deploy] (部署)

gcloud

如要從現有工作站集區選擇性移除環境變數,請使用 --remove-env-vars 旗標:

gcloud beta run worker-pools update WORKER_POOL --remove-env-vars KEY1,KEY2

更改下列內容:

  • WORKER_POOL:工作站集區名稱
  • KEY1,KEY2:以半形逗號分隔的變數名稱清單

或者,您也可以使用 --clear-env-vars 標記,清除先前設定的所有環境變數:

gcloud beta run worker-pools update WORKER_POOL --clear-env-vars

WORKER_POOL 替換為工作站集區的名稱。

查看工作站集區的環境變數設定

  1. 前往 Google Cloud 控制台的 Cloud Run:

    前往 Cloud Run

  2. 按一下「工作站集區」,即可顯示已部署的工作站集區清單。

  3. 按一下要檢查的 worker 集區,顯示詳細資料窗格。

  4. 按一下「Containers」(容器) 分頁標籤,即可顯示工作站集區容器設定。

程式碼範例

如需程式碼範例,瞭解如何在程式碼中存取環境變數,請參閱使用者驗證教學課程中的「使用 Secret Manager 處理機密設定」。

後續步驟

您可以使用環境變數設定 buildpack。如需特定語言的詳細資料,請參閱下列語言的建構套件說明文件: