ローカルでの Azure Storage の開発に Azurite エミュレーターを使用する

Azurite オープンソース エミュレーターには、Azure Blob、Queue Storage、Table Storage アプリケーションをテストするための無料のローカル環境が用意されています。 ローカルでのアプリケーションの動作に満足できたら、クラウドでの Azure Storage アカウントの使用に切り替えることができます。 エミュレーターは、Windows、Linux、および macOS でのクロスプラットフォーム サポートを提供します。

Azurite は Azure Storage Emulator に代わり、最新バージョンの Azure Storage API をサポートするように引き続き更新されます。

このビデオでは、Azure エミュレーターをインストールして実行する方法について説明します。

ビデオの手順については、次のセクションでも説明します。 これらのタブのいずれかを選択してください。

Azurite をインストールする

Azurite は Visual Studio 2022 で自動的に使用できるようになります。 Azurite 実行可能ファイルは、Visual Studio の新しいバージョン リリースの一部として更新されます。 以前のバージョンの Visual Studio を実行している場合は、Node パッケージ マネージャー (npm) か DockerHub のいずれかを使用して、または Azurite GitHub リポジトリを複製して、Azurite をインストールできます。

Azurite を実行する

Visual Studio のほとんどのプロジェクト タイプで Azurite を使用するには、まず Azurite 実行可能ファイルを実行する必要があります。 実行可能ファイルが実行されると、Azurite はアプリケーションからの接続要求をリッスンします。 詳細については、「コマンド ラインからの Azurite の実行」を参照してください。

Azure Functions プロジェクトと ASP.NET プロジェクトでは、Azurite を自動的に開始するようにプロジェクトを構成するよう選択できます。 この構成は、プロジェクトのセットアップ中に行われます。 このプロジェクト構成では Azurite が自動的に開始されますが、Visual Studio では詳細な Azurite 構成オプションは公開されません。 Azurite の詳細な構成オプションをカスタマイズするには、Visual Studio を起動する前に Azurite 実行可能ファイルを実行します。

Azurite を自動的に開始するように Azure Functions プロジェクトと ASP.NET プロジェクトを構成する方法の詳細については、次のガイダンスを参照してください。

Azurite 実行可能ファイルの場所

次の表は、Windows コンピューターで実行されている Visual Studio のさまざまなバージョンの Azurite 実行可能ファイルの場所を示しています。

Visual Studio のバージョン Azurite 実行可能ファイルの場所
Visual Studio Community 2022 C:\Program Files\Microsoft Visual Studio\2022\Community\Common7\IDE\Extensions\Microsoft\Azure Storage Emulator
Visual Studio Professional 2022 C:\Program Files\Microsoft Visual Studio\2022\Professional\Common7\IDE\Extensions\Microsoft\Azure Storage Emulator
Visual Studio Enterprise 2022 C:\Program Files\Microsoft Visual Studio\2022\Enterprise\Common7\IDE\Extensions\Microsoft\Azure Storage Emulator

コマンド ラインからの Azurite の実行

Azurite 実行可能ファイルの場所の表で詳しく説明されているように、Azurite 実行可能ファイルは Visual Studio インストールの extensions フォルダーにあります。

適切な場所に移動して azurite.exe を開始します。 実行可能ファイルを実行すると、Azurite は接続をリッスンします。

Azurite command-line output

Azurite を構成するために使用できるコマンド ライン オプションの詳細については、「コマンド ライン オプション」を参照してください。

Azure Functions プロジェクトからの Azurite の実行

Visual Studio 2022 で、Azure Functions プロジェクトを作成します。 プロジェクト オプションを設定するときに、[ランタイム ストレージ アカウントに Azurite を使用する] というラベルの付いたボックスにマークを付けます。

A screenshot showing how to set Azurite to be the runtime storage account for an Azure Functions project.

プロジェクトを作成すると、Azurite が自動的に開始されます。 Azurite 実行可能ファイルの場所については、Azurite 実行可能ファイルの場所の表を参照してください。 出力は次のスクリーンショットのようになります。

A screenshot showing output after setting Azurite to be the runtime storage account for an Azure Functions project.

この構成オプションは、プロジェクトの接続済みサービスの依存関係を変更して後で変更することができます。

ASP.NET プロジェクトからの Azurite の実行

Visual Studio 2022 で、ASP.NET Core Web アプリ プロジェクトを作成します。 [接続済みサービス] ダイアログ ボックスを開き、[サービス依存関係の追加] を選択し、[ストレージ Azurite エミュレーター] を選択します。

A screenshot showing how to add Azurite as a dependency to an ASP.NET project.

[Configure Storage Azurite emulator](ストレージ Azurite エミュレーターの構成) ダイアログ ボックスで、[接続文字列名] フィールドを StorageConnectionString に設定し、[完了] を選択します。

A screenshot showing how to configure a connection string to use Azurite with an ASP.NET project.

構成が完了したら、[閉じる] を選択すると、Azurite エミュレーターが自動的に起動します。 Azurite 実行可能ファイルの場所については、Azurite 実行可能ファイルの場所の表を参照してください。 出力は次のスクリーンショットのようになります。

A screenshot showing output after connecting an ASP.NET project to the Azurite emulator.

この構成オプションは、プロジェクトの接続済みサービスの依存関係を変更して後で変更することができます。

コマンドライン オプション

このセクションでは、Azurite を起動するときに使用できるコマンド ライン スイッチについて詳しく説明します。

Help

オプション - -h または --help スイッチを使用してコマンド ラインのヘルプを取得します。

azurite -h
azurite --help

リッスン中のホスト

オプション - 既定では、Azurite はローカル サーバーとして 127.0.0.1 をリッスンします。 要件に合わせてアドレスを設定するには、--blobHost スイッチを使用します。

ローカル コンピューターの要求のみを受け入れる:

azurite --blobHost 127.0.0.1

リモート要求を許可する:

azurite --blobHost 0.0.0.0

注意事項

リモート要求を許可すると、システムが外部からの攻撃に対して脆弱になる可能性があります。

リスニング ポート構成

オプション - 既定では、Azurite は Blob service をポート 10000 でリッスンします。 必要なリスニング ポートを指定するには、--blobPort スイッチを使用します。

Note

カスタマイズされたポートを使用した後、Azure Storage ツールまたは SDK で、接続文字列または対応する構成を更新する必要があります。

Blob service のリスニング ポートをカスタマイズする:

azurite --blobPort 8888

使用可能なポートをシステムに自動選択させる:

azurite --blobPort 0

使用中のポートは Azurite の起動時に表示されます。

ワークスペース パス

オプション - Azurite は、実行中にデータをローカル ディスクに格納します。 ワークスペースの場所としてパスを指定するには、-l または --location スイッチを使用します。 既定では、現在のプロセスの作業ディレクトリが使用されます。 小文字の "l" であることに注意してください。

azurite -l c:\azurite
azurite --location c:\azurite

アクセス ログ

オプション - 既定では、アクセス ログはコンソール ウィンドウに表示されます。 -s または --silent スイッチを使用すると、アクセス ログの表示が無効になります。

azurite -s
azurite --silent

デバッグ ログ

オプション - デバッグ ログにはすべての要求と例外スタック トレースに関する詳細情報が含まれます。 -d または --debug スイッチに有効なローカル ファイル パスを指定すると、デバッグ ログが有効になります。

azurite -d path/debug.log
azurite --debug path/debug.log

ルーズ モード

オプション - Azurite では、既定で、サポートされていない要求ヘッダーとパラメーターをブロックするために厳格モードが適用されます。 -L または --loose スイッチを使用すると、厳格モードが無効になります。 大文字の "L" であることに注意してください。

azurite -L
azurite --loose

Version

オプション - -v または --version スイッチを使用して、インストールされている Azurite のバージョン番号を表示します。

azurite -v
azurite --version

証明書の構成 (HTTPS)

オプション - 既定では、Azurite は HTTP プロトコルを使用します。 HTTPS モードを有効にするには、Privacy Enhanced Mail (.pem) または Personal Information Exchange (.pfx) 証明書ファイルへのパスを --cert スイッチに指定します。 OAuth 認証を使用して Azurite に接続するには、HTTPS が必要です。

PEM ファイルに --cert が指定されている場合、対応する --key スイッチを指定する必要があります。

azurite --cert path/server.pem --key path/key.pem

PFX ファイルに --cert が指定されている場合、対応する --pwd スイッチを指定する必要があります。

azurite --cert path/server.pfx --pwd pfxpassword
HTTPS の設定

PEM および PFX ファイルの生成の詳細については、「HTTPS セットアップ」を参照してください。

OAuth 構成

オプション - --oauth スイッチを使用して、Azurite の OAuth 認証を有効にします。

azurite --oauth basic --cert path/server.pem --key path/key.pem

Note

OAuth には HTTPS エンドポイントが必須です。 --oauth スイッチと共に --cert スイッチを指定することで、HTTPS を確実に有効にしてください。

Azurite は、--oauth スイッチに basic パラメーターを指定することによって基本認証をサポートします。 Azurite は、受信ベアラー トークンの検証や、発行者、対象ユーザー、有効期限の確認などの基本認証を行います。 Azurite は、トークンの署名とアクセス許可の確認を行いません。 承認の詳細については、「ツールと SDK の認証」を参照してください。

API のバージョン チェックをスキップする

省略可能 -起動時に、Azurite では、要求された API バージョンが有効であることが確認されます。 次のコマンドを使用すると、API のバージョン チェックがスキップされます。

azurite --skipApiVersionCheck

本番環境スタイルの URL を無効にする

省略可。 要求 URI ホストで IP の代わりに完全修飾ドメイン名を使用する場合、既定では Azurite は要求 URI ホストからストレージ アカウント名を解析します。 --disableProductStyleUrl を使用して、要求 URI パスからストレージ アカウント名を強制的に解析できます。

azurite --disableProductStyleUrl

メモリ内の保持

省略可。 既定では、BLOB とキューのメタデータはディスクに保持され、コンテンツはエクステント ファイルに保持されます。 テーブル ストレージは、すべてのデータをディスクに保持します。 ディスクへのデータの保持を無効にし、データをメモリ内にのみ格納することができます。 メモリ内保持のシナリオでは、Azurite プロセスが終了すると、すべてのデータが失われます。 既定の保持の動作は、次のオプションを使用してオーバーライドできます。

azurite --inMemoryPersistence

この設定は、SQL ベースのメタデータ実装が (AZURITE_DB を使用して) 有効になっている場合、または --location オプションが指定されている場合は拒否されます。

エクステント メモリの制限

省略可。 既定では、メモリ内のエクステント ストア (BLOB およびキューのコンテンツ用) は、ホスト マシン上の合計メモリの 50% に制限されます。 合計は os.totalmem() を使用して評価されます。 この制限は、次のオプションを使用してオーバーライドできます。

azurite --extentMemoryLimit <megabytes>

このオプションに指定される値に制限はありませんが、オペレーティング システムによって提供される使用可能な物理メモリの量をこの制限が超えた場合は、仮想メモリが使用される可能性があります。 上限が大きいと、最終的にメモリ不足エラーが発生したり、パフォーマンスが低下したりする可能性があります。 このオプションは、--inMemoryPersistence が指定されていない場合は拒否されます。

詳細については、「インメモリ ストレージを使用する」を参照してください。

SDK やツールを使用して Azurite に接続する

Azure Storage SDK または Azure Storage Explorer などのツールから Azurite に接続できます。 接続には認証が必要です。Azurite は、OAuth、共有キー、Shared Access Signature (SAS) を使用した認証をサポートしています。 Azurite ではパブリック コンテナーへの匿名アクセスもサポートされています。

Azurite を Azure SDK とともに使用する場合は、「Azure SDK」を参照してください。

既知のストレージ アカウントとキー

Azurite は、従来の Azure ストレージ エミュレーターで使用されるものと同じ既知のアカウントとキーを受け入れます。

  • アカウント名: devstoreaccount1
  • アカウント キー: Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==

カスタム ストレージ アカウントとキー

Azurite では、AZURITE_ACCOUNTS 環境変数を次の形式で設定することにより、カスタム ストレージ アカウント名とキーがサポートされます: account1:key1[:key2];account2:key1[:key2];...

たとえば、1 つのキーを持つカスタム ストレージ アカウントを使用する場合は、次のように指定します。

set AZURITE_ACCOUNTS="account1:key1"
export AZURITE_ACCOUNTS="account1:key1"

注意

アカウント キーは base64 でエンコードされた文字列である必要があります。

それぞれ 2 つのキーを持つ複数のストレージ アカウントを使用する場合は、次のように指定します。

set AZURITE_ACCOUNTS="account1:key1:key2;account2:key1:key2"
export AZURITE_ACCOUNTS="account1:key1:key2;account2:key1:key2"

Azurite では、既定で、1 分ごとにカスタム アカウント名とキーが環境変数から更新されます。 この機能により、アカウント キーを動的にローテーションしたり、Azurite を再起動することなく新しいストレージ アカウントを追加したりできます。

Note

カスタム ストレージ アカウントを設定すると、既定の devstoreaccount1 ストレージ アカウントは無効になります。 カスタム ストレージ アカウントを有効にした後も devstoreaccount1 を使い続けたい場合は、AZURITE_ACCOUNTS 環境変数のカスタム アカウントとキーの一覧にそれを追加する必要があります。

アカウント キーは base64 でエンコードされた文字列である必要があります。

Connection strings

アプリケーションから Azurite に接続する最も簡単な方法は、ショートカット UseDevelopmentStorage=true を参照するアプリケーションの構成ファイル内で接続文字列を構成することです。 たとえば、app.config ファイル内の接続文字列は次のようになります。

<appSettings>
  <add key="StorageConnectionString" value="UseDevelopmentStorage=true" />
</appSettings>
HTTP 接続文字列

次の接続文字列は、Azure SDK またはツール (Azure CLI 2.0 や Storage Explorer など) に渡すことができます。

完全な接続文字列は次のとおりです。

DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;QueueEndpoint=http://127.0.0.1:10001/devstoreaccount1;TableEndpoint=http://127.0.0.1:10002/devstoreaccount1;

特定のサービスに接続するには、次の接続文字列を使用できます。

Blob Storage にのみ接続する場合、接続文字列は次のようになります。

DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;

HTTPS 接続文字列

完全な HTTPS 接続文字列は次のとおりです。

DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://127.0.0.1:10000/devstoreaccount1;QueueEndpoint=https://127.0.0.1:10001/devstoreaccount1;TableEndpoint=https://127.0.0.1:10002/devstoreaccount1;

特定のサービスに接続するには、次の接続文字列を使用できます。

Blob service のみを使用する場合、HTTPS 接続文字列は次のようになります。

DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://127.0.0.1:10000/devstoreaccount1;

dotnet dev-certs を使用して自己署名証明書を生成した場合は、次の接続文字列を使用します。

DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://localhost:10000/devstoreaccount1;QueueEndpoint=https://localhost:10001/devstoreaccount1;TableEndpoint=https://localhost:10002/devstoreaccount1;

カスタム ストレージ アカウントとキーを使用する場合は、接続文字列を更新します。

詳細については、「Azure Storage の接続文字列を構成する」を参照してください。

Azure SDK

Azure SDK を使用して Azurite に接続するには、次の手順に従います。

  • --oauth スイッチを使用して、Azurite の OAuth 認証を有効にします。 詳細については、「OAuth 構成」を参照してください。
  • --cert オプションと --key/--pwd オプションによって自己署名証明書を使用して、HTTPS を有効にします。 証明書の生成について詳しくは、「証明書の構成 (HTTPS)」と「HTTPS セットアップ」を参照してください。

証明書が配置されたら、次のコマンド ライン オプションを使用して Azurite を起動します。

azurite --oauth basic --cert cert-name.pem --key cert-name-key.pem

cert-name.pemcertname-key.pem を証明書とキー ファイルの名前に置き換えます。 PFX 証明書を使用している場合は、--key オプションの代わりに --pwd オプションを使用します。

Blob Storage リソースを操作するには、BlobContainerClientBlobServiceClient、または BlobClient のインスタンスを作成します。

次の例は、DefaultAzureCredential、接続文字列、共有キーの 3 つの異なる承認メカニズムを使用して BlobContainerClient オブジェクトを承認する方法を示しています。 DefaultAzureCredential はベアラー トークンベースの認証メカニズムを提供し、認証に使用される資格情報の種類のチェーンを使用します。 認証されると、この資格情報はクライアントのインスタンス化の一部として OAuth トークンを提供します。 詳細については、「DefaultAzureCredential クラス」のリファレンスを参照してください。

// With container URL and DefaultAzureCredential
var client = new BlobContainerClient(
    new Uri("https://127.0.0.1:10000/devstoreaccount1/container-name"), new DefaultAzureCredential()
  );

// With connection string
var client = new BlobContainerClient(
    "DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://127.0.0.1:10000/devstoreaccount1;", "container-name"
  );

// With account name and key
var client = new BlobContainerClient(
    new Uri("https://127.0.0.1:10000/devstoreaccount1/container-name"),
    new StorageSharedKeyCredential("devstoreaccount1", "Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==")
  );

Microsoft Azure Storage Explorer

Storage Explorer を使用すると、Azurite に格納されているデータを表示できます。

HTTP を使用して Azurite に接続する

Storage Explorer で、次の手順に従って Azurite に接続します。

  1. [アカウントの管理] アイコンを選択します
  2. [アカウントの追加] を選択します
  3. [ローカル エミュレーターにアタッチする] を選択します
  4. [次へ] を選択します
  5. [表示名] フィールドを編集して、任意の名前にします
  6. もう一度 [次へ] を選択します
  7. [接続] を選択します
HTTPS を使用して Azurite に接続する

既定では、Storage Explorer は、自己署名証明書を使用する HTTPS エンドポイントを開きません。 HTTPS で Azurite を実行している場合は、自己署名証明書を使用している可能性があります。 Storage Explorer で、[編集] ->[SSL 証明書] ->[証明書のインポート] ダイアログを使用して SSL 証明書をインポートします。

証明書を Storage Explorer にインポートする
  1. ローカル コンピューターで証明書を検索します。
  2. Storage Explorer で、[編集] ->[SSL 証明書] ->[証明書のインポート] の順に移動して、証明書をインポートします。

証明書をインポートしないと、次のエラーが表示されます。

unable to verify the first certificate または self signed certificate in chain

HTTPS 接続文字列を使用して Azurite を追加する

Storage Explorer に Azurite HTTPS を追加するには、次の手順に従います。

  1. [エクスプローラーの切り替え] を選択します
  2. [Local & Attached]\(ローカルで接続済み\) を選択します
  3. [ストレージ アカウント] を右クリックし、 [Connect to Azure Storage](Azure Storage に接続する) を選択します
  4. [Use a connection string](接続文字列を使用する) を選択します
  5. [次へ] を選択します。
  6. [表示名] フィールドに値を入力します
  7. このドキュメントの前のセクションに示した HTTPS 接続文字列を入力します
  8. [次へ] を選択します
  9. [接続] を選択します

ワークスペースの構造

Azurite を初期化するときに、次のファイルとフォルダーがワークスペースの場所に作成されることがあります。

  • __blobstorage__ - Azurite Blob service の永続化されたバイナリ データを格納しているディレクトリ
  • __queuestorage__ - Azurite Queue サービスの永続化されたバイナリ データを格納しているディレクトリ
  • __tablestorage__ - Azurite テーブル サービスの永続化されたバイナリ データを格納しているディレクトリ
  • __azurite_db_blob__.json - Azurite Blob service のメタデータ ファイル
  • __azurite_db_blob_extent__.json - Azurite Blob service のエクステント メタデータ ファイル
  • __azurite_db_queue__.json - Azurite Queue サービスのメタデータ ファイル
  • __azurite_db_queue_extent__.json - Azurite Queue サービスのエクステント メタデータ ファイル
  • __azurite_db_table__.json - Azurite テーブル サービスのメタデータ ファイル
  • __azurite_db_table_extent__.json - Azurite テーブル サービスのエクステント メタデータ ファイル

Azurite をクリーンアップするには、上記のファイルとフォルダーを削除し、エミュレーターを再起動します。

Azurite と Azure Storage の違い

Azurite のローカル インスタンスとクラウドの Azure Storage アカウントには機能上の違いがあります。

エンドポイントおよび接続 URL

Azurite のサービス エンドポイントは、Azure Storage アカウントのエンドポイントとは異なります。 ローカル コンピューターはドメイン名の解決を行わず、Azurite エンドポイントをローカル アドレスにする必要があります。

Azure Storage アカウントのリソースをアドレス指定する場合、アカウント名は URI ホスト名の一部になります。 アドレス指定されるリソースは、URI パスの一部です。

<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>

以下の URI は、Azure Storage アカウント内の BLOB の有効なアドレスです。

https://myaccount.blob.core.windows.net/mycontainer/myblob.txt

IP スタイルの URL

ローカル コンピューターはドメイン名を解決しないため、アカウント名は、ホスト名ではなく URI パスの一部になります。 Azurite のリソースには、次の URI 形式を使用します。

http://<local-machine-address>:<port>/<account-name>/<resource-path>

Azurite の BLOB にアクセスするには次のアドレスを使用できます。

http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt

本番環境スタイルの URL

必要に応じて、"本番環境スタイル" の URL でアカウントにアクセスするために hosts ファイルを変更できます。

まず、hosts ファイルに 1 行以上の行を追加します。 次に例を示します。

127.0.0.1 account1.blob.localhost
127.0.0.1 account1.queue.localhost
127.0.0.1 account1.table.localhost

次に、環境変数を設定して、カスタマイズされたストレージ アカウントとキーを有効にします。

set AZURITE_ACCOUNTS="account1:key1:key2"

さらにアカウントを追加できます。 この記事の「カスタム ストレージ アカウントとキー」セクションを参照してください。

Azurite を起動し、カスタマイズした接続文字列を使用してアカウントにアクセスします。 次の例では、接続文字列では既定のポートが使用されていることを想定しています。

DefaultEndpointsProtocol=http;AccountName=account1;AccountKey=key1;BlobEndpoint=http://account1.blob.localhost:10000;QueueEndpoint=http://account1.queue.localhost:10001;TableEndpoint=http://account1.table.localhost:10002;

Azure Storage Explorer では、この方法で既定のアカウントにアクセスしないでください。 Storage Explorer が常に URL パスにアカウント名を追加するバグがあり、エラーが発生します。

既定では、本番環境スタイルの URL で Azurite を使用する場合、アカウント名は http://devstoreaccount1.blob.localhost:10000/container のような完全修飾ドメイン名のホスト名にする必要があります。 http://foo.bar.com:10000/devstoreaccount1/container のような URL パスにアカウント名を含む本番環境スタイルの URL を使用するには、Azurite を起動するときに --disableProductStyleUrl パラメーターを使用してください。

host.docker.internal を要求 URI ホスト (例: http://host.docker.internal:10000/devstoreaccount1/container) として使用する場合、Azurite は要求 URI パスからアカウント名を取得します。 この動作は、Azurite を起動するときに --disableProductStyleUrl パラメーターを使用するかどうかに関係なく当てはまります。

スケーリングとパフォーマンス

Azurite は、多数の接続されたクライアントをサポートしていません。 パフォーマンスの保証はありません。 Azurite は開発とテストを目的としています。

エラー処理

Azurite は Azure Storage エラー処理ロジックに合わせて調整されていますが、違いがあります。 たとえば、エラー メッセージは異なる場合がありますが、エラー状態コードは調整されています。

RA-GRS

Azurite は、読み取りアクセス geo 冗長レプリケーション (RA-GRS) をサポートしています。 ストレージ リソースの場合、2 次拠点にアクセスするにはアカウント名に -secondary を付加します。 たとえば、Azurite で読み取り専用の 2 次拠点を使用して BLOB にアクセスするには、次のアドレスを使用します。

http://127.0.0.1:10000/devstoreaccount1-secondary/mycontainer/myblob.txt

テーブル サポート

Azurite 内でのテーブルのサポートは、現在プレビュー段階です。 詳細については、Azurite V3 Table プロジェクトをご覧ください。

持続的関数のサポートにはテーブルが必要です。

重要

Table Storage の Azurite サポーは、現在プレビュー段階です。 ベータ版、プレビュー版、または一般提供としてまだリリースされていない Azure の機能に適用される法律条項については、「Microsoft Azure プレビューの追加使用条件」を参照してください。

Azurite はオープンソースです

Azurite への参加や提案をお待ちしています。 近日公開される機能やバグ修正のために追跡しているマイルストーンと作業項目については、Azurite の GitHub プロジェクト ページまたは GitHub の課題を参照してください。 GitHub では詳細な作業項目も追跡されています。

次のステップ