Udostępnij przez


Instalowanie i uruchamianie emulatora usługi Azurite

Korzystanie z emulatora Azurite umożliwia deweloperom szybkie śledzenie tworzenia aplikacji i narzędzi opartych na chmurze bez konieczności łączności z Internetem.

Ten artykuł zawiera instrukcje dotyczące instalowania i uruchamiania rozwiązania Azurite, a także konfigurowania go na potrzeby programowania lokalnego. Aby uzyskać więcej informacji na temat korzystania z platformy Azurite, zobacz Use the Azurite emulator for local Azure Storage development (Używanie emulatora Azurite do lokalnego programowania w usłudze Azure Storage).

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.

Instalowanie usługi Azurite

Usługę Azurite można zainstalować i uruchomić przy użyciu różnych metod, takich jak npm, Docker i Visual Studio Code. W tym filmie wideo pokazano, jak zainstalować i uruchomić emulator Azurite.

Kroki opisane w filmie wideo zostały również opisane w poniższych sekcjach. Wybierz dowolną z tych kart, aby wyświetlić konkretne instrukcje dotyczące środowiska.

Usługa Azurite jest automatycznie dostępna w programie Visual Studio 2022. Plik wykonywalny Azurite jest aktualizowany w ramach nowych wersji programu Visual Studio. Jeśli korzystasz ze starszej wersji programu Visual Studio, możesz zainstalować rozwiązanie Azurite przy użyciu menedżera pakietów node (npm), witryny DockerHub lub sklonowania repozytorium GitHub Azurite.

Uruchamianie Azurite

Wybierz dowolną z poniższych kart, aby wyświetlić konkretne instrukcje dotyczące środowiska.

Aby użyć platformy Azurite z większością typów projektów w programie Visual Studio, należy najpierw uruchomić plik wykonywalny Azurite. Po uruchomieniu pliku wykonywalnego usługa Azurite nasłuchuje żądań połączeń z aplikacji. Aby dowiedzieć się więcej, zobacz Uruchamianie Azurite z wiersza polecenia.

W przypadku projektów usługi Azure Functions i projektów ASP.NET można skonfigurować projekt do automatycznego uruchamiania platformy Azurite. Ta konfiguracja jest wykonywana podczas konfigurowania projektu. Chociaż ta konfiguracja projektu jest uruchamiana automatycznie przez usługę Azurite, program Visual Studio nie uwidacznia szczegółowych opcji konfiguracji Azurite. Aby dostosować szczegółowe opcje konfiguracji Azurite, uruchom plik wykonywalny Azurite przed uruchomieniem programu Visual Studio.

Aby dowiedzieć się więcej na temat konfigurowania projektów usługi Azure Functions i ASP.NET projektów w celu automatycznego uruchamiania usługi Azurite, zobacz następujące wskazówki:

Lokalizacja pliku wykonywalnego Azurite

W poniższej tabeli przedstawiono lokalizację pliku wykonywalnego Azurite dla różnych wersji programu Visual Studio uruchomionych na maszynie z systemem Windows:

Wersja programu Visual Studio Lokalizacja pliku wykonywalnego 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

Uruchamianie Azurite z wiersza polecenia

Plik wykonywalny Azurite można znaleźć w folderze rozszerzeń instalacji programu Visual Studio, zgodnie z opisem w tabeli lokalizacji pliku wykonywalnego Azurite.

Przejdź do odpowiedniej lokalizacji i uruchom plik azurite.exe. Po uruchomieniu pliku wykonywalnego Azurite nasłuchuje połączeń.

Aby dowiedzieć się więcej o dostępnych opcjach wiersza polecenia w celu skonfigurowania platformy Azurite, zobacz Opcje wiersza polecenia.

Uruchamianie rozwiązania Azurite z projektu usługi Azure Functions

W programie Visual Studio 2022 utwórz projekt usługi Azure Functions . Podczas ustawiania opcji projektu zaznacz pole z etykietą Użyj Azurite dla konta magazynu środowiska uruchomieniowego.

Zrzut ekranu przedstawiający sposób ustawiania platformy Azurite na konto magazynu środowiska uruchomieniowego dla projektu usługi Azure Functions.

Po utworzeniu projektu Azurite uruchamia się automatycznie. Lokalizacja pliku wykonywalnego Azurite jest szczegółowa w tabeli lokalizacji pliku wykonywalnego Azurite. Dane wyjściowe wyglądają podobnie do poniższego zrzutu ekranu:

Zrzut ekranu przedstawiający dane wyjściowe po ustawieniu platformy Azurite jako konta magazynu środowiska uruchomieniowego dla projektu usługi Azure Functions.

Tę opcję konfiguracji można zmienić później, modyfikując zależności usług połączonych projektu.

Uruchamianie usługi Azurite z projektu ASP.NET

W programie Visual Studio 2022 utwórz projekt aplikacji internetowej ASP.NET Core . Następnie otwórz okno dialogowe Usługi połączone , wybierz pozycję Dodaj zależność usługi, a następnie wybierz pozycję Emulator usługi Storage Azurite.

Zrzut ekranu przedstawiający sposób dodawania Azurite jako zależności do projektu ASP.NET.

W oknie dialogowym Konfigurowanie emulatora usługi Storage Azurite ustaw pole Nazwa parametrów połączenia na StorageConnectionStringwartość , a następnie wybierz pozycję Zakończ.

Zrzut ekranu przedstawiający sposób konfigurowania parametrów połączenia do używania rozwiązania Azurite z projektem ASP.NET.

Po zakończeniu konfiguracji wybierz pozycję Zamknij, a emulator Azurite zostanie uruchomiony automatycznie. Lokalizacja pliku wykonywalnego Azurite jest szczegółowa w tabeli lokalizacji pliku wykonywalnego Azurite. Dane wyjściowe wyglądają podobnie do poniższego zrzutu ekranu:

Zrzut ekranu przedstawiający dane wyjściowe po połączeniu projektu ASP.NET z emulatorem Azurite.

Tę opcję konfiguracji można zmienić później, modyfikując zależności usług połączonych projektu.

Opcje wiersza polecenia

W tej sekcji szczegółowo przedstawiono przełączniki wiersza polecenia dostępne podczas uruchamiania platformy Azurite.

Help

Opcjonalnie — uzyskaj pomoc w wierszu polecenia przy użyciu przełącznika -h lub --help .

azurite -h
azurite --help

Host nasłuchiwania

Opcjonalnie — domyślnie Azurite nasłuchuje 127.0.0.1 jako serwer lokalny. Użyj przełącznika --blobHost , aby ustawić adres zgodnie z wymaganiami.

Akceptuj żądania tylko na komputerze lokalnym:

azurite --blobHost 127.0.0.1

Zezwalaj na żądania zdalne:

azurite --blobHost 0.0.0.0

Ostrzeżenie

Zezwolenie na żądania zdalne może spowodować, że system będzie narażony na ataki zewnętrzne.

Konfiguracja portu nasłuchiwania

Opcjonalnie — domyślnie Azurite nasłuchuje usługi Blob Service na porcie 10000. Użyj przełącznika --blobPort , aby określić wymagany port nasłuchiwania.

Uwaga / Notatka

Po użyciu dostosowanego portu należy zaktualizować parametry połączenia lub odpowiednią konfigurację w narzędziach lub zestawach SDK usługi Azure Storage.

Dostosuj port nasłuchiwania usługi Blob Service:

azurite --blobPort 8888

Pozwól systemowi automatycznie wybrać dostępny port:

azurite --blobPort 0

Port używany jest wyświetlany podczas uruchamiania Azurite.

Ścieżka obszaru roboczego

Opcjonalnie — Azurite przechowuje dane na dysku lokalnym podczas wykonywania. Użyj przełącznika -l lub --location , aby określić ścieżkę jako lokalizację obszaru roboczego. Domyślnie jest używany bieżący katalog roboczy procesu. Zanotuj małe litery "l".

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

Dziennik dostępu

Opcjonalne — domyślnie dziennik dostępu jest wyświetlany w oknie konsoli. Wyłącz wyświetlanie dziennika dostępu przy użyciu przełącznika -s lub --silent .

azurite -s
azurite --silent

Dziennik debugowania

Opcjonalnie — dziennik debugowania zawiera szczegółowe informacje dotyczące każdego żądania i śladu stosu wyjątków. Włącz dziennik debugowania, podając prawidłową lokalną ścieżkę pliku do przełącznika -d lub --debug .

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

Tryb luźny

Opcjonalnie — domyślnie usługa Azurite stosuje tryb ścisły w celu blokowania nieobsługiwanych nagłówków i parametrów żądań. Wyłącz tryb ścisły przy użyciu przełącznika -L lub --loose . Zanotuj stolicę "L".

azurite -L
azurite --loose

wersja

Opcjonalnie — wyświetl zainstalowany numer wersji Azurite przy użyciu przełącznika -v lub --version .

azurite -v
azurite --version

Konfiguracja certyfikatu (HTTPS)

Opcjonalnie — domyślnie Azurite używa protokołu HTTP. Tryb HTTPS można włączyć, podając ścieżkę do pliku certyfikatu Poczta rozszerzona o prywatność (pem) lub pliku certyfikatu wymiany informacji osobistych (pfx) do przełącznika --cert . Protokół HTTPS jest wymagany do nawiązania połączenia z usługą Azurite przy użyciu uwierzytelniania OAuth.

W przypadku --cert podania pliku PEM należy podać odpowiedni --key przełącznik.

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

W przypadku --cert podania pliku PFX należy podać odpowiedni --pwd przełącznik.

azurite --cert path/server.pfx --pwd pfxpassword

Konfiguracja protokołu HTTPS

Aby uzyskać szczegółowe informacje na temat generowania plików PEM i PFX, zobacz Konfigurowanie protokołu HTTPS.

Konfiguracja protokołu OAuth

Opcjonalnie — włącz uwierzytelnianie OAuth dla Azurite przy użyciu przełącznika --oauth .

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

Uwaga / Notatka

Protokół OAuth wymaga punktu końcowego HTTPS. Upewnij się, że protokół HTTPS jest włączony, podając --cert przełącznik wraz z przełącznikiem --oauth .

Usługa Azurite obsługuje uwierzytelnianie podstawowe, określając basic parametr przełącznika --oauth . Usługa Azurite wykonuje uwierzytelnianie podstawowe, takie jak weryfikowanie przychodzącego tokenu elementu nośnego, sprawdzanie wystawcy, odbiorców i wygaśnięcie. Usługa Azurite nie sprawdza podpisu ani uprawnień tokenu. Aby dowiedzieć się więcej na temat autoryzacji, zobacz Nawiązywanie połączenia z usługą Azurite przy użyciu zestawów SDK i narzędzi.

Pomiń sprawdzanie wersji interfejsu API

Opcjonalnie — podczas uruchamiania usługa Azurite sprawdza, czy żądana wersja interfejsu API jest prawidłowa. Następujące polecenie pomija sprawdzanie wersji interfejsu API:

azurite --skipApiVersionCheck

Wyłączanie adresu URL w stylu produkcyjnym

Opcjonalnie. Jeśli używasz w pełni kwalifikowanej nazwy domeny zamiast adresu IP w hoście identyfikatora URI żądania, usługa Azurite analizuje nazwę konta magazynu z hosta identyfikatora URI żądania domyślnie. Możesz wymusić analizowanie nazwy konta magazynu ze ścieżki identyfikatora URI żądania przy użyciu polecenia --disableProductStyleUrl:

azurite --disableProductStyleUrl

Trwałość w pamięci

Opcjonalnie. Domyślnie metadane obiektów blob i kolejki są utrwalane na dysku, a zawartość jest utrwalana w zakresie plików. Usługa Table Storage utrwala wszystkie dane na dysku. Możesz wyłączyć utrwalanie wszystkich danych na dysku i przechowywać tylko dane w pamięci. W scenariuszu trwałości w pamięci, jeśli proces Azurite zostanie zakończony, wszystkie dane zostaną utracone. Domyślne zachowanie trwałości można zastąpić przy użyciu następującej opcji:

azurite --inMemoryPersistence

To ustawienie jest odrzucane, gdy implementacja metadanych opartych na języku SQL jest włączona (za pośrednictwem AZURITE_DB), lub gdy jest określona --location opcja.

Limit pamięci w zakresie

Opcjonalnie. Domyślnie magazyn w zakresie pamięci (dla zawartości obiektu blob i kolejki) jest ograniczony do 50% całkowitej pamięci na maszynie hosta. Suma jest obliczana przy użyciu metody os.totalmem(). Ten limit można zastąpić przy użyciu następującej opcji:

azurite --extentMemoryLimit <megabytes>

Nie ma żadnych ograniczeń dotyczących wartości określonej dla tej opcji. Jednak pamięć wirtualna może być używana, jeśli limit przekracza ilość dostępnej pamięci fizycznej dostarczonej przez system operacyjny. Wysoki limit może ostatecznie prowadzić do błędów braku pamięci lub zmniejszenia wydajności. Ta opcja jest odrzucana, gdy --inMemoryPersistence nie jest określona.

Aby dowiedzieć się więcej, zobacz Używanie magazynu w pamięci.

Wyłączanie zbierania danych telemetrycznych

Opcjonalnie. Domyślnie Azurite zbiera dane telemetryczne, aby pomóc ulepszyć produkt. --disableTelemetry Użyj opcji , aby wyłączyć zbieranie danych telemetrycznych dla bieżącego wykonywania Azurite, na przykład następujące polecenie:

azurite --disableTelemetry

Dalsze kroki