gcloud CLI の構成の管理

構成とは、Google Cloud CLI の一連のプロパティに名前を付けたものです。これらのプロパティは、Key-Value ペアの形でセクションごとにまとめられ、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 構成が 1 つあれば十分ですが、追加の構成を作成し、必要に応じて gcloud config configurations activate を使用して切り替えることもできます。初期の default 構成は特別なものではなく、便宜上作成されたものにすぎません。これに名前を付け、必要に応じて設定を追加することもできます。

複数の構成があると、次のような場合に便利です。

  • 複数のプロジェクトを使用する: プロジェクトごとに別の構成を作成し、必要に応じて切り替えることができます。
  • 複数の承認アカウントを使用する
  • 独立したタスクを実行する: たとえば、プロジェクトの App Engine アプリケーションで使用する構成を作成し、別のプロジェクトの Compute Engine インスタンスを管理する構成を作成します。

構成を作成する

構成を作成するには、gcloud config configurations create を実行します。

gcloud config configurations create [NAME]

新しい構成を使用するには、作成後に新しい構成を有効にする必要があります。

構成を有効にする

複数の構成があっても、一度に有効にできるのは 1 つのみです。有効な構成とは、そのプロパティによって gcloud CLI の動作を制御する構成のことです。

新しい構成を有効にするか、新しい有効な構成に切り替えるには、gcloud config configurations activate を実行します。

gcloud config configurations activate [NAME]

gcloud config list を使用すると、有効な構成のプロパティの一覧が表示されます。

有効な構成を指定してコマンドを 1 回だけ実行するには、任意の gcloud CLI コマンドで --configuration フラグを使用します。

gcloud auth list --configuration=[CONFIGURATION_NAME]

現在の端末で、すべてのコマンドに適用される有効な構成を変更するには、端末の環境変数 CLOUDSDK_ACTIVE_CONFIG_NAME に構成の名前を指定します。

構成の切り替えを自動化する

構成の変更をシームレスにするには、direnvondir などのツールを活用して、作業ディレクトリを切り替えるときに自動的に構成を切り替えることができます。この方法の 1 つとして、プロジェクトのルート ディレクトリにある .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 を使用して別の構成に切り替えてください。

次のステップ