ソブリン クラウドで Azure Developer CLI を使用する

このガイドでは、リソースをプロビジョニングし、異なるクラウドにアプリケーションをデプロイするように Azure Developer CLI を構成する方法について説明します。

Azure Developer CLI では、次のクラウドがサポートされています。

  • Azure パブリック (AzureCloud) の既定値
  • 21Vianet Cloud が運用する Azure (AzureChinaCloud)
  • Azure US Government (AzureUSGovernment)

Azure パブリック クラウドが既定であり、クラウドが指定されていない場合に使用されます。

認証

クラウドを切り替えるときは、 azd auth login を実行して、設定されたクラウドで認証します。

次の例では、ソブリン クラウドを設定し、そのクラウドで認証するために azd auth login 実行します。

azd config set cloud.name AzureUSGovernment
azd auth login

クラウド構成

クラウドは、ユーザー、プロジェクト、または環境レベルで構成できます。 構成の優先順位は次のとおりです。

  1. 環境の構成 が最初に選択されている
  2. 環境でクラウドが構成されていない場合は、 プロジェクト構成 (azure.yaml) が使用されます
  3. プロジェクト構成にクラウドが設定されていない場合は、 ユーザー構成 (azd config set) が使用されます
  4. ユーザー構成にクラウドが設定されていない場合、azd はパブリック AzureCloud

ユーザー設定を使用してクラウドを構成する (azd config set)

azd のすべての操作に対して、azd config を使用してクラウドを設定します。

azd config set cloud.name AzureCloud
azd config set cloud.name AzureChinaCloud
azd config set cloud.name AzureUSGovernment

プロジェクトの azure.yaml ファイルでクラウドを構成する

cloud オブジェクトを使用して、プロジェクトの azure.yaml ファイル内のクラウドの名前を設定します。

name: project-name
cloud:
  name: AzureCloud
name: project-name
cloud:
  name: AzureChinaCloud
name: project-name
cloud:
  name: AzureUSGovernment

環境の config.json ファイルでクラウドを構成する

.azure/<environment-name>/config.jsonの環境構成ファイルを更新して、特定の環境用にクラウドを構成します。 これにより、たとえば、環境ごとに異なるクラウドにデプロイできます。

{
    "cloud": {
        "name": "AzureCloud"
    }
}
{
    "cloud": {
        "name": "AzureChinaCloud"
    }
}
{
    "cloud": {
        "name": "AzureUSGovernment"
    }
}

サポートされているコマンドとプラットフォーム

サポートされているコマンドは次のとおりです。

  • auth
  • コンフィグ
  • デプロイする
  • ダウン
  • env
  • プロビジョニング
  • モニター
  • ショー

azd pipeline はソブリン クラウドではサポートされていません。

devcenter プラットフォームはソブリン クラウドではサポートされていません。

Terraform を使用したデプロイ

azdと Terraform を使用してソブリン クラウドにデプロイする場合、az CLI も目的のクラウドを使用するように構成する必要があります。 Azure CLI ドキュメントを使用した Terraform の認証を参照してください。

環境変数 ARM_ENVIRONMENT 目的の環境に設定します。 一般的な値:

  • public (既定値)
  • usgovernment
  • china

az CLI を使用して適切なクラウドを選択します。

az cloud set --name AzureCloud
az cloud set --name AzureChinaCloud
az cloud set --name AzureUSGovernment