リモート環境のサポート

リモート環境が動作するしくみ

リモート環境を使用するには、リモート状態を有効にして、環境の状態が構成済みのリモート ストアに自動的に保持されるようにすることができます。 これはつまり、azd.env または config.json ファイルに書き込む任意の azd コマンドは自動的に保持されるということです。

リモート状態を構成する

azd のリモート状態は、azdconfig.json でグローバルに構成することも、あるいは azure.yaml 内でプロジェクト別に構成することできます。 リモート状態がセットアップされていない場合は、環境値と構成は引き続きローカルに格納されます。

リモート状態を azd 構成の state.remote 要素内に構成できます

  • backend: リモート状態に使用されるバックエンドの種類の名前
  • config: 各リモート状態プロバイダーに固有のキー/値ペアのマップ

プロジェクト別に有効にする

azure.yaml

name: azd-project-name
state:
  remote:
    backend: AzureBlobStorage
    config:
      accountName: saazdremotestate
      containerName: myproject # Defaults to project name if not specified

グローバルに有効にする

azd config.json

{
  "state": {
    "remote": {
      "backend": "AzureBlobStorage",
      "config": {
        "accountName": "saazdremotestate"
      }
    }
  }
}

サポート対象のリモート状態バックエンド

Azure Blob Storage

azd は、.envconfig.json ファイルを Azure ストレージ BLOB コンテナーに書き込みます

構成

  • accountName: Azure Storage アカウントの名前
  • containerName: 構成が格納されているストレージ アカウント内のコンテナーの名前。 指定されていない場合は、既定で現在の azd プロジェクト名に設定されます
  • endpoint: リモート状態を構成するときに使用される Azure エンドポイント。 既定値は core.windows.net です

リモート状態と azd コマンド

azd env list

使用可能なすべてのローカル環境とリモート環境を一覧表示します。 次に例を示します。

リモート環境での「azd env list」の出力例。

azd env select

ローカルに存在しない環境を選択すると、リモート状態が新しいローカル環境にコピーされます。

たとえば、上記の azd env list からの出力について考えてみましょう。 リモート状態 dev をローカル環境にコピーするには、次のコマンドを実行します。

azd env select dev