配置是一组指定的 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 偏好设置存储在仅针对当前 Cloud Shell 标签页设置的临时 tmp
文件夹中,并且不会跨会话保留。
如果您有多个配置,可以选择在这些配置之间切换,或者使用特定配置运行命令(借助 --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
设置为您要使用的配置的名称。
自动配置切换
为了帮助无缝地更改配置,您可以利用 direnv 和 ondir 等工具在切换工作目录时自动切换配置。实现此目的的一种方法是在项目根目录的 .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 set
和 gcloud config unset
:
gcloud config set project [PROJECT]
gcloud config unset project
也可以通过名为 CLOUDSDK_SECTION_NAME_PROPERTY_NAME
的环境变量设置属性。例如,您可以按如下方式设置 core/project
和 compute/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
。
后续步骤
- 请参阅 gcloud CLI 属性以详细了解属性。