Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować się zalogować lub zmienić katalog.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Emulator open source usługi Azurite udostępnia bezpłatne środowisko lokalne do testowania aplikacji opartych na chmurze. Gdy jesteś zadowolony z działania aplikacji lokalnie, przejdź do korzystania z konta usługi Azure Storage w chmurze.
Azurite to lekki emulator magazynu napisany w języku JavaScript i uruchamiany w Node.js, który symuluje usługę Azure Storage na potrzeby programowania lokalnego. Obsługuje ona usługi Blob, Queue i Table Storage oraz zapewnia obsługę wielu platform w systemach Windows, Linux i macOS. Aby uzyskać pomoc dotyczącą instalowania i uruchamiania rozwiązania Azurite, zobacz Instalowanie i uruchamianie emulatora usługi Azurite.
Usługa Azurite umożliwia również deweloperom uruchamianie testów względem lokalnego środowiska magazynu, symulując zachowanie platformy Azure, co ma kluczowe znaczenie dla integracji i kompleksowego testowania. Aby dowiedzieć się więcej na temat używania platformy Azurite do testowania automatycznego, zobacz Uruchamianie testów automatycznych przy użyciu platformy Azurite.
Usługa Azurite zastępuje emulator usługi Azure Storage i nadal jest aktualizowana w celu obsługi najnowszych wersji interfejsów API usługi Azure Storage.
Różnice między usługą Azurite i usługą Azure Storage
Istnieją różnice funkcjonalne między lokalnym wystąpieniem usługi Azurite i kontem usługi Azure Storage w chmurze.
Ważne
Usługa Azurite obsługuje tylko usługi Blob, Queue i Table Storage. Nie obsługuje usług Azure Files ani Azure Data Lake Storage Gen2, ale zapewnia obsługę międzyplatformową w systemach Windows, Linux i macOS.
Adres URL punktu końcowego i połączenia
Punkty końcowe usługi dla platformy Azurite różnią się od punktów końcowych konta usługi Azure Storage. Komputer lokalny nie obsługuje rozpoznawania nazw domen, co wymaga od punktów końcowych Azurite adresów lokalnych.
Gdy adresujesz zasób na koncie Azure Storage, nazwa konta jest częścią nazwy hosta URI. Zasób, o którym mowa, jest częścią ścieżki URI:
<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>
Następujący identyfikator URI jest prawidłowym adresem obiektu blob na koncie usługi Azure Storage:
https://myaccount.blob.core.windows.net/mycontainer/myblob.txt
Adres URL stylizowany na IP
Ponieważ komputer lokalny nie rozpoznaje nazw domen, nazwa konta jest częścią ścieżki identyfikatora URI zamiast nazwy hosta. Użyj następującego formatu identyfikatora URI dla zasobu w usłudze Azurite:
http://<local-machine-address>:<port>/<account-name>/<resource-path>
Następujący adres może służyć do uzyskiwania dostępu do obiektu blob w Azurite:
http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt
Adres URL w formacie produkcyjnym
Opcjonalnie możesz zmodyfikować plik hostów, aby uzyskać dostęp do konta przy użyciu adresu URL w formie produkcyjnej.
Najpierw dodaj jeden lub więcej wierszy do pliku hosts. Na przykład:
127.0.0.1 account1.blob.localhost
127.0.0.1 account1.queue.localhost
127.0.0.1 account1.table.localhost
Następnie ustaw zmienne środowiskowe, aby włączyć spersonalizowane konta magazynu i klucze.
set AZURITE_ACCOUNTS="account1:key1:key2"
Możesz dodać więcej kont. Zobacz sekcję Niestandardowe konta magazynu i klucze w artykule Łączenie z usługą Azurite.
Uruchom usługę Azurite i użyj dostosowanych parametrów połączenia, aby uzyskać dostęp do konta. W poniższym przykładzie parametry połączenia zakładają, że są używane porty domyślne.
DefaultEndpointsProtocol=http;AccountName=account1;AccountKey=key1;BlobEndpoint=http://account1.blob.localhost:10000;QueueEndpoint=http://account1.queue.localhost:10001;TableEndpoint=http://account1.table.localhost:10002;
Nie uzyskujesz dostępu do domyślnego konta w ten sposób za pomocą Eksploratora usługi Azure Storage. Eksplorator usługi Storage ma błąd, który powoduje, że zawsze dodaje nazwę konta do ścieżki adresu URL, co prowadzi do błędów.
Domyślnie w przypadku używania Azurite z adresem URL w stylu produkcyjnym nazwa konta powinna być w pełni kwalifikowaną nazwą domeny hosta, taką jak http://devstoreaccount1.blob.localhost:10000/container. Aby użyć adresu URL w stylu produkcyjnym z nazwą konta w ścieżce adresu URL, takiej jak http://foo.bar.com:10000/devstoreaccount1/container, pamiętaj, aby użyć parametru --disableProductStyleUrl podczas uruchamiania Azurite.
Jeśli używasz host.docker.internal jako hosta identyfikatora URI żądania (na przykład: http://host.docker.internal:10000/devstoreaccount1/container), Azurite pobiera nazwę konta ze ścieżki identyfikatora URI żądania. To zachowanie jest prawdziwe niezależnie od tego, czy używasz parametru --disableProductStyleUrl podczas uruchamiania Azurite.
Skalowanie i wydajność
Usługa Azurite nie obsługuje dużej liczby połączonych klientów. Nie ma gwarancji wydajności. Azurite jest przeznaczony do celów programistycznych i testowych.
Obsługa błędów
Usługa Azurite jest zgodna z logiką obsługi błędów usługi Azure Storage, ale istnieją różnice. Na przykład komunikaty o błędach mogą być inne, a kody stanu błędów są zgodne.
RA-GRS
Usługa Azurite obsługuje geograficznie nadmiarową replikację z dostępem do odczytu (RA-GRS). W przypadku zasobów pamięci uzyskaj dostęp do lokacji pomocniczej, dołączając -secondary do nazwy konta. Na przykład, następujący adres może być użyty do uzyskania dostępu do bloba za pomocą drugorzędnego dostępu tylko do odczytu w Azurite.
http://127.0.0.1:10000/devstoreaccount1-secondary/mycontainer/myblob.txt
Obsługa tabel
Obsługa tabel w Azurite jest obecnie dostępna w wersji zapoznawczej. Aby uzyskać więcej informacji, zobacz projekt Azurite V3 Table .
Obsługa funkcji trwałych wymaga tabel.
Ważne
Obsługa Azurite dla Table Storage jest obecnie dostępna w wersji zapoznawczej. Zobacz dodatkowe warunki użytkowania dla wersji zapoznawczych platformy Microsoft Azure, aby zapoznać się z postanowieniami prawnymi dotyczącymi funkcji platformy Azure, które są w wersji beta, wersji zapoznawczej lub w inny sposób nie zostały jeszcze wydane w wersji ogólnodostępnej.
Azurite jest otwartym oprogramowaniem
Wkład i sugestie dotyczące Azurite są mile widziane. Przejdź do strony projektu GitHub Azurite lub do strony problemów GitHub, aby zobaczyć kamienie milowe i elementy robocze, które śledzimy w związku z przyszłymi funkcjami i poprawkami błędów. Szczegółowe elementy robocze są również śledzone w usłudze GitHub.
Struktura obszaru roboczego
Podczas inicjowania usługi Azurite można utworzyć następujące pliki i foldery w lokalizacji obszaru roboczego.
-
__blobstorage__— Katalog zawierający dane binarne utrwalone w usłudze Azurite Blob Service -
__queuestorage__- Katalog zawierający trwałe dane binarne usługi kolejki Azurite -
__tablestorage__- Katalog zawierający utrwalone dane binarne usługi tabel Azurite -
__azurite_db_blob__.json- Azurite blob service metadata file (Plik metadanych usługi Azurite blob service) -
__azurite_db_blob_extent__.json- Plik metadanych zakresu usługi Blob platformy Azure Azurite -
__azurite_db_queue__.json- Plik metadanych usługi kolejki Azurite -
__azurite_db_queue_extent__.json- Plik metadanych zakresu usługi kolejki Azurite -
__azurite_db_table__.json- Azurite table service metadata file (Plik metadanych usługi tabel Azurite) -
__azurite_db_table_extent__.json- Plik metadanych zakresu usługi tabel Azurite
Aby wyczyścić usługę Azurite, usuń pliki i foldery i uruchom ponownie emulator.
Następne kroki
- W artykule Install and run Azurite emulator (Instalowanie i uruchamianie emulatora Azurite ) opisano sposób instalowania i uruchamiania rozwiązania Azurite na komputerze lokalnym.
- Nawiązywanie połączenia z usługą Azurite za pomocą zestawów SDK i narzędzi wyjaśnia, jak nawiązać połączenie z usługą Azurite przy użyciu różnych zestawów SDK i narzędzi usługi Azure Storage.
- Użyj emulatora usługi Azure Storage, aby uzyskać dokumenty programistyczne i testowe starszego emulatora usługi Azure Storage zastąpionego przez usługę Azurite.