管理 gcloud CLI 設定

設定為 Google Cloud CLI 屬性的命名集。這些屬性是鍵/值組合,以區段形式整理,用於管理 gcloud CLI 的行為。

通常儲存在設定中的屬性包括預設 Compute Engine 區域、詳細程度、用量報告、專案 ID,以及有效使用者或服務帳戶。您可以透過設定,將這些和其他設定一起定義及啟用為群組。

設定會儲存在使用者設定目錄中 (通常是 MacOS 和 Linux 上的 ~/.config/gcloud,或是 Windows 上的 %APPDATA%\gcloud)。如要找出設定目錄的位置,請執行 gcloud info --format='value(config.paths.global_config_dir)'。設定環境變數 CLOUDSDK_CONFIG 即可變更設定目錄。此外,請注意,設定目錄必須啟用寫入功能。不過,如果您使用 Cloud Shell,gcloud CLI 偏好設定會儲存在臨時 tmp 資料夾中,僅適用於目前的 Cloud Shell 分頁,不會在工作階段之間保留。

如果您有多個設定,可以選擇切換設定,或使用特定設定執行指令 (透過 --configuration 旗標)。如要進一步瞭解如何切換設定,請參閱下方的「啟用設定」一節。

如要透過指令列讀取設定 (以及可用屬性的完整清單和所屬區段),請執行 gcloud topic configurations

預設設定

gcloud CLI 一開始會為您提供名為 default 的單一設定,您可以執行 gcloud init 指令或直接執行 gcloud config set,在設定中設定屬性。

舉例來說,如要停用編寫指令碼的提示,請執行:

gcloud config set disable_prompts true

多重配置

單一 default 設定適用於許多用途。不過您也可以建立其他配置,並視情況需要,使用 gcloud config configurations activate 進行切換。初始 default 設定沒有特別之處,只是為了方便而建立。您可以隨意命名這項配置或任何其他配置。

如果您想執行下列事項,多重配置就相當實用:

  • 使用多重專案:您可以為每個專案建立個別配置,並依照需求在其中切換。
  • 使用多重授權帳戶
  • 執行一般獨立工作:例如,您可以在一個專案中針對 App Engine 應用程式使用一個配置,並管理其他專案中的不相關 Compute Engine 執行個體。

建立設定

如要建立設定,請執行 gcloud config configurations create

gcloud config configurations create [NAME]

您必須在配置建立後進行啟用才能使用該配置。

啟用配置

多重配置中僅有一個配置會在指定時間內啟用。有效設定是指屬性會控管 gcloud CLI 行為的設定。

如要啟用新設定或切換至新啟用的設定,請執行: gcloud config configurations activate

gcloud config configurations activate [NAME]

gcloud config list 會一律顯示您所啟用配置的屬性。

如要變更單一指令叫用的使用中配置,可以在任何 gcloud CLI 指令上使用 --configuration 標記:

gcloud auth list --configuration=[CONFIGURATION_NAME]

如要將啟用中的配置在您的目前終端機中變更為適用所有指令,您可以將環境變數 CLOUDSDK_ACTIVE_CONFIG_NAME 設為您想使用的配置名稱。

自動進行配置切換

為了能夠天衣無縫地變更配置,您可以利用 direnvondir 等工具,在您切換工作目錄時自動切換配置。如要達成這個目的,其中一種方法是在專案根目錄的 .envrc 檔案中,設定必要的環境變數 (例如 CLOUDSDK_ACTIVE_CONFIG_NAME)。

列出配置

如要列出 gcloud CLI 安裝內容中的配置,請執行 gcloud config configurations list

gcloud config configurations list

gcloud CLI 會列出所有設定,並顯示目前啟用的設定:

NAME         IS_ACTIVE     ACCOUNT            PROJECT               DEFAULT_ZONE  DEFAULT_REGION
default      False         user@gmail.com     example-project-1     us-east1-b    us-east1
project-1    False         user@gmail.com     example-project-2     us-east1-c    us-east1
project-2    True          user@gmail.com     example-project-3     us-east1-b    us-east1

設定配置屬性

如要設定及取消設定使用中設定的屬性,請執行 gcloud config setgcloud config unset

gcloud config set project [PROJECT]

gcloud config unset project

您也可以透過名為 CLOUDSDK_SECTION_NAME_PROPERTY_NAME 的環境變數設定屬性。舉例來說,您可以按照下列方式設定 core/projectcompute/zone 屬性:

CLOUDSDK_CORE_PROJECT=[YOUR_PROJECT_NAME]

CLOUDSDK_COMPUTE_ZONE=[YOUR_ZONE_NAME]

檢視配置屬性

如要檢視某個配置中的屬性,請執行: gcloud config configurations describe

gcloud config configurations describe [NAME]

如要檢視使用中配置的屬性:

gcloud config list

gcloud CLI 會輸出配置屬性:

is_active: false
name: default
properties:
  compute:
    region: us-east1
    zone: us-east1-b
  core:
    account: user@google.com
    project: example-project

刪除配置

如要刪除設定,請執行: gcloud config configurations delete

gcloud config configurations delete [NAME]

您無法刪除處於啟用狀態的設定。如要在刪除前切換至其他設定,請視需要使用 gcloud config configurations activate

後續步驟