De Azurite-emulator gebruiken voor lokale Azure Storage-ontwikkeling
De OpenSource-emulator Van Azurite biedt een gratis lokale omgeving voor het testen van uw Azure Blob-, Queue Storage- en Table Storage-toepassingen. Wanneer u tevreden bent over hoe uw toepassing lokaal werkt, schakelt u over naar het gebruik van een Azure Storage-account in de cloud. De emulator biedt platformoverschrijdende ondersteuning voor Windows, Linux en macOS.
Azurite vervangt de Azure Storage Emulator en blijft bijgewerkt ter ondersteuning van de nieuwste versies van Azure Storage-API's.
In deze video ziet u hoe u de Azurite-emulator installeert en uitvoert.
De stappen in de video worden ook beschreven in de volgende secties. Selecteer een van deze tabbladen.
Azurite installeren
Azurite is automatisch beschikbaar met Visual Studio 2022. Het uitvoerbare bestand Van Azurite wordt bijgewerkt als onderdeel van nieuwe versies van Visual Studio. Als u een eerdere versie van Visual Studio uitvoert, kunt u Azurite installeren met behulp van Node Pakketbeheer (npm), DockerHub of door de GitHub-opslagplaats van Azurite te klonen.
Run Azurite
Als u Azurite wilt gebruiken met de meeste projecttypen in Visual Studio, moet u eerst het uitvoerbare bestand Van Azurite uitvoeren. Zodra het uitvoerbare bestand wordt uitgevoerd, luistert Azurite naar verbindingsaanvragen van de toepassing. Zie Running Azurite vanaf de opdrachtregel voor meer informatie.
Voor Azure Functions-projecten en ASP.NET projecten kunt u ervoor kiezen om het project automatisch te configureren om Azurite automatisch te starten. Deze configuratie wordt uitgevoerd tijdens het instellen van het project. Hoewel deze projectconfiguratie Automatisch wordt gestart met Azurite, worden in Visual Studio geen gedetailleerde Configuratieopties voor Azurite weergegeven. Als u gedetailleerde Configuratieopties voor Azurite wilt aanpassen, voert u het uitvoerbare bestand Van Azurite uit voordat u Visual Studio start.
Zie de volgende richtlijnen voor meer informatie over het configureren van Azure Functions-projecten en ASP.NET projecten om Azure Functions automatisch te starten:
Locatie van uitvoerbare Bestand van Azurite
In de volgende tabel ziet u de locatie van het uitvoerbare Bestand van Azurite voor verschillende versies van Visual Studio die worden uitgevoerd op een Windows-computer:
Visual Studio-versie | Uitvoerbare locatie van 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 uitvoeren vanaf de opdrachtregel
U vindt het uitvoerbare bestand Van Azurite in de map extensies van uw Visual Studio-installatie, zoals wordt beschreven in de locatietabel van het uitvoerbare Bestand van Azurite.
Navigeer naar de juiste locatie en start azurite.exe
. Nadat u het uitvoerbare bestand hebt uitgevoerd, luistert Azurite naar verbindingen.
Zie Opdrachtregelopties voor meer informatie over beschikbare opdrachtregelopties voor het configureren van Azurite.
Azurite uitvoeren vanuit een Azure Functions-project
Maak in Visual Studio 2022 een Azure Functions-project . Markeer tijdens het instellen van de projectopties het vak met het label Use Azurite voor runtime-opslagaccount.
Nadat u het project hebt gemaakt, wordt Azurite automatisch gestart. De locatie van het uitvoerbare bestand Van Azurite wordt beschreven in de tabel met uitvoerbare bestandslocatie van Azurite. De uitvoer ziet er ongeveer als volgt uit:
Deze configuratieoptie kan later worden gewijzigd door de afhankelijkheden van het project Verbinding maken ed Services te wijzigen.
Azurite uitvoeren vanuit een ASP.NET project
Maak in Visual Studio 2022 een ASP.NET Core Web App-project . Open vervolgens het dialoogvenster Verbinding maken ed Services, selecteer Een serviceafhankelijkheid toevoegen en selecteer vervolgens Storage Azurite Emulator.
Stel in het dialoogvenster Storage Azurite-emulator configureren het veld Verbinding maken tekenreeksnaam StorageConnectionString
in op en selecteer Voltooien.
Wanneer de configuratie is voltooid, selecteert u Sluiten en wordt de Emulator van De Azurite automatisch gestart. De locatie van het uitvoerbare bestand Van Azurite wordt beschreven in de tabel met uitvoerbare bestandslocatie van Azurite. De uitvoer ziet er ongeveer als volgt uit:
Deze configuratieoptie kan later worden gewijzigd door de afhankelijkheden van het project Verbinding maken ed Services te wijzigen.
Opdrachtregelopties
In deze sectie worden de opdrachtregelswitches beschreven die beschikbaar zijn bij het starten van Azurite.
Help
Optioneel : hulp bij opdrachtregels ophalen met behulp van de -h
of --help
switch.
azurite -h
azurite --help
Luisterende host
Optioneel - Standaard luistert Azurite naar 127.0.0.1 als de lokale server. Gebruik de --blobHost
schakeloptie om het adres in te stellen op uw vereisten.
Accepteer alleen aanvragen op de lokale computer:
azurite --blobHost 127.0.0.1
Externe aanvragen toestaan:
azurite --blobHost 0.0.0.0
Let op
Het toestaan van externe aanvragen kan uw systeem kwetsbaar maken voor externe aanvallen.
Poortconfiguratie luisteren
Optioneel : Standaard luistert Azurite naar de Blob-service op poort 10000. Gebruik de --blobPort
switch om de luisterpoort op te geven die u nodig hebt.
Notitie
Nadat u een aangepaste poort hebt gebruikt, moet u de verbindingsreeks of bijbehorende configuratie bijwerken in uw Azure Storage-hulpprogramma's of SDK's.
Pas de luisterende poort van de Blob-service aan:
azurite --blobPort 8888
Laat het systeem automatisch een beschikbare poort selecteren:
azurite --blobPort 0
De gebruikte poort wordt weergegeven tijdens het opstarten van Azurite.
Werkruimtepad
Optioneel : Azurite slaat gegevens op de lokale schijf op tijdens de uitvoering. Gebruik de -l
of --location
schakeloptie om een pad op te geven als de locatie van de werkruimte. Standaard wordt de huidige werkmap voor processen gebruikt. Noteer de kleine letter 'l'.
azurite -l c:\azurite
azurite --location c:\azurite
Toegangslogboek
Optioneel : standaard wordt het toegangslogboek weergegeven in het consolevenster. Schakel de weergave van het toegangslogboek uit met behulp van de -s
of --silent
schakeloptie.
azurite -s
azurite --silent
Foutopsporingslogboek
Optioneel : het foutopsporingslogboek bevat gedetailleerde informatie over elke aanvraag en uitzonderingsstacktracering. Schakel het foutopsporingslogboek in door een geldig lokaal bestandspad naar de -d
of --debug
switch op te geven.
azurite -d path/debug.log
azurite --debug path/debug.log
Losse modus
Optioneel : Standaard past Azurite de strikte modus toe om niet-ondersteunde aanvraagheaders en -parameters te blokkeren. Schakel de strikte modus uit met behulp van de -L
of --loose
switch. Noteer de hoofdletter 'L'.
azurite -L
azurite --loose
Versie
Optioneel : het geïnstalleerde Versienummer van Azurite weergeven met behulp van de -v
of --version
switch.
azurite -v
azurite --version
Certificaatconfiguratie (HTTPS)
Optioneel - Standaard gebruikt Azurite het HTTP-protocol. U kunt de HTTPS-modus inschakelen door een pad naar een Privacy Enhanced Mail-certificaatbestand (.pem) of Personal Information Exchange -certificaatbestand (.pfx) naar de --cert
switch op te geven. HTTPS is vereist om verbinding te maken met Azurite met behulp van OAuth-verificatie.
Wanneer --cert
er een PEM-bestand wordt opgegeven, moet u een bijbehorende --key
switch opgeven.
azurite --cert path/server.pem --key path/key.pem
Wanneer --cert
wordt opgegeven voor een PFX-bestand, moet u een bijbehorende --pwd
switch opgeven.
azurite --cert path/server.pfx --pwd pfxpassword
HTTPS-installatie
Zie HTTPS Setup voor gedetailleerde informatie over het genereren van PEM- en PFX-bestanden.
OAuth-configuratie
Optioneel : schakel OAuth-verificatie in voor Azurite met behulp van de --oauth
switch.
azurite --oauth basic --cert path/server.pem --key path/key.pem
Notitie
OAuth vereist een HTTPS-eindpunt. Zorg ervoor dat HTTPS is ingeschakeld door de switch samen met de switch op te --oauth
geven--cert
.
Azurite ondersteunt basisverificatie door de basic
parameter naar de --oauth
switch op te geven. Azurite voert basisverificatie uit, zoals het valideren van het binnenkomende Bearer-token, het controleren van de uitgever, doelgroep en vervaldatum. Azurite controleert de tokenhandtekening of machtigingen niet. Zie Autorisatie voor hulpprogramma's en SDK's voor meer informatie over autorisatie.
Api-versiecontrole overslaan
Optioneel : bij het opstarten controleert Azurite of de aangevraagde API-versie geldig is. Met de volgende opdracht wordt de CONTROLE van de API-versie overgeslagen:
azurite --skipApiVersionCheck
URL voor productiestijl uitschakelen
Optioneel. Wanneer u de volledig gekwalificeerde domeinnaam gebruikt in plaats van het IP-adres in de aanvraag-URI-host, parseert Azurite standaard de naam van het opslagaccount van de aanvraag-URI-host. U kunt afdwingen dat de naam van het opslagaccount wordt geparseerd vanuit het aanvraag-URI-pad met behulp van --disableProductStyleUrl
:
azurite --disableProductStyleUrl
Persistentie in het geheugen
Optioneel. Blob- en wachtrijmetagegevens worden standaard opgeslagen op schijf en inhoud blijft behouden voor zover bestanden. Met Table Storage blijven alle gegevens op schijf behouden. U kunt persistente gegevens op schijf uitschakelen en alleen gegevens in het geheugen opslaan. In het scenario voor persistentie in het geheugen, als het Azurite-proces wordt beëindigd, gaan alle gegevens verloren. Het standaardpersistentiegedrag kan worden overschreven met behulp van de volgende optie:
azurite --inMemoryPersistence
Deze instelling wordt geweigerd wanneer de implementatie van op SQL gebaseerde metagegevens is ingeschakeld (via AZURITE_DB
), of wanneer de --location
optie is opgegeven.
Geheugenlimiet voor omvang
Optioneel. De opslag in het geheugen (voor blob- en wachtrijinhoud) is standaard beperkt tot 50% van het totale geheugen op de hostcomputer. Het totaal wordt geëvalueerd met behulp van os.totalmem()
. Deze limiet kan worden overschreven met de volgende optie:
azurite --extentMemoryLimit <megabytes>
Er is geen beperking voor de waarde die voor deze optie is opgegeven, maar het virtuele geheugen kan worden gebruikt als de limiet groter is dan de hoeveelheid beschikbaar fysiek geheugen zoals geleverd door het besturingssysteem. Een hoge limiet kan uiteindelijk leiden tot geheugenfouten of verminderde prestaties. Deze optie wordt geweigerd wanneer --inMemoryPersistence
deze niet is opgegeven.
Zie Opslag in het geheugen gebruiken voor meer informatie.
Verbinding maken naar Azurite met SDK's en hulpprogramma's
U kunt verbinding maken met Azurite vanuit Azure Storage SDK's of hulpprogramma's zoals Azure Storage Explorer. Verificatie is vereist en Azurite ondersteunt autorisatie met OAuth, Shared Key en Shared Access Signatures (SAS). Azurite ondersteunt ook anonieme toegang tot openbare containers.
Zie Azure SDK's voor meer informatie over het gebruik van Azurite met de Azure SDK's.
Bekende opslagaccount en sleutel
Azurite accepteert hetzelfde bekende account en dezelfde sleutel die wordt gebruikt door de verouderde Azure Storage Emulator.
- Accountnaam:
devstoreaccount1
- Accountsleutel:
Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==
Aangepaste opslagaccounts en -sleutels
Azurite ondersteunt aangepaste opslagaccountnamen en -sleutels door de AZURITE_ACCOUNTS
omgevingsvariabele in te stellen in de volgende indeling: account1:key1[:key2];account2:key1[:key2];...
.
Gebruik bijvoorbeeld een aangepast opslagaccount met één sleutel:
set AZURITE_ACCOUNTS="account1:key1"
export AZURITE_ACCOUNTS="account1:key1"
Notitie
De accountsleutels moeten een base64-gecodeerde tekenreeks zijn.
Of gebruik meerdere opslagaccounts met elk twee sleutels:
set AZURITE_ACCOUNTS="account1:key1:key2;account2:key1:key2"
export AZURITE_ACCOUNTS="account1:key1:key2;account2:key1:key2"
Azurite vernieuwt standaard aangepaste accountnamen en sleutels uit de omgevingsvariabele. Met deze functie kunt u de accountsleutel dynamisch draaien of nieuwe opslagaccounts toevoegen zonder Azurite opnieuw op te starten.
Notitie
Het standaardopslagaccount devstoreaccount1
is uitgeschakeld wanneer u aangepaste opslagaccounts instelt. Als u wilt blijven gebruiken devstoreaccount1
nadat u aangepaste opslagaccounts hebt ingeschakeld, moet u deze toevoegen aan de lijst met aangepaste accounts en sleutels in de AZURITE_ACCOUNTS
omgevingsvariabele.
De accountsleutels moeten een base64-gecodeerde tekenreeks zijn.
Verbindingsreeksen
De eenvoudigste manier om vanuit uw toepassing verbinding te maken met Azurite is door een verbindingsreeks te configureren in het configuratiebestand van uw toepassing dat verwijst naar de snelkoppeling UseDevelopmentStorage=true. Hier volgt een voorbeeld van een verbindingsreeks in een app.config-bestand:
<appSettings>
<add key="StorageConnectionString" value="UseDevelopmentStorage=true" />
</appSettings>
HTTP-verbindingsreeks s
U kunt de volgende verbindingsreeks s doorgeven aan de Azure SDK's of hulpprogramma's, zoals Azure CLI 2.0 of Storage Explorer.
De volledige verbindingsreeks is:
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;
Als u verbinding wilt maken met een specifieke service, kunt u de volgende verbindingsreeks s gebruiken:
Als u alleen verbinding wilt maken met Blob Storage, is het verbindingsreeks:
DefaultEndpointsProtocol=http;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=http://127.0.0.1:10000/devstoreaccount1;
HTTPS-verbindingsreeks s
De volledige HTTPS-verbindingsreeks is:
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;
Als u verbinding wilt maken met een specifieke service, kunt u de volgende verbindingsreeks s gebruiken:
Als u de blobservice alleen wilt gebruiken, is de HTTPS-verbindingsreeks:
DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://127.0.0.1:10000/devstoreaccount1;
Als u het dotnet dev-certs
zelfondertekende certificaat hebt gegenereerd, gebruikt u de volgende verbindingsreeks.
DefaultEndpointsProtocol=https;AccountName=devstoreaccount1;AccountKey=Eby8vdM02xNOcqFlqUwJPLlmEtlCDXJ1OUzFT50uSRZ6IFsuFq2UVErCz4I6tq/K1SZFPTOtr/KBHBeksoGMGw==;BlobEndpoint=https://localhost:10000/devstoreaccount1;QueueEndpoint=https://localhost:10001/devstoreaccount1;TableEndpoint=https://localhost:10002/devstoreaccount1;
Werk de verbindingsreeks bij wanneer u aangepaste opslagaccounts en sleutels gebruikt.
Zie Azure Storage-verbindingsreeks s configureren voor meer informatie.
Azure-SDK's
Volg deze stappen om verbinding te maken met Azurite met de Azure SDK's:
- Schakel OAuth-verificatie in voor Azurite via de
--oauth
switch. Zie OAuth-configuratie voor meer informatie. - Schakel HTTPS in met behulp van een zelfondertekend certificaat via de
--cert
en--key
/--pwd
opties. Zie De configuratie van certificaten (HTTPS) en HTTPS instellen voor meer informatie over het genereren van certificaten.
Zodra de certificaten zijn ingesteld, start u Azurite met de volgende opdrachtregelopties:
azurite --oauth basic --cert cert-name.pem --key cert-name-key.pem
Vervang cert-name.pem
en certname-key.pem
door de namen van uw certificaat- en sleutelbestanden. Als u een PFX-certificaat gebruikt, gebruikt u de --pwd
optie in plaats van de --key
optie.
Als u wilt communiceren met Blob Storage-resources, kunt u een instantie maken van een BlobContainerClient
, BlobServiceClient
of BlobClient
.
In de volgende voorbeelden ziet u hoe u een BlobContainerClient
object autoriseert met behulp van drie verschillende autorisatiemechanismen: DefaultAzureCredential, verbindingsreeks en gedeelde sleutel. DefaultAzureCredential
biedt een verificatiemechanisme op basis van bearer-tokens en maakt gebruik van een keten van referentietypen die worden gebruikt voor verificatie. Zodra deze verificatie is uitgevoerd, biedt deze referentie het OAuth-token als onderdeel van clientexemptatie. Zie de naslaginformatie over de klasse DefaultAzureCredential voor meer informatie.
// 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
U kunt Storage Explorer gebruiken om de gegevens weer te geven die zijn opgeslagen in Azurite.
Verbinding maken naar Azurite met behulp van HTTP
Maak in Storage Explorer verbinding met Azurite door de volgende stappen uit te voeren:
- Selecteer het pictogram Accounts beheren
- Selecteer Een account toevoegen
- Koppelen aan een lokale emulator selecteren
- Selecteer Volgende
- Het veld Weergavenaam bewerken in een naam van uw keuze
- Selecteer Volgende opnieuw
- Selecteer Verbinden
Verbinding maken naar Azurite met HTTPS
Standaard opent Storage Explorer geen HTTPS-eindpunt dat gebruikmaakt van een zelfondertekend certificaat. Als u Azurite uitvoert met HTTPS, gebruikt u waarschijnlijk een zelfondertekend certificaat. Importeer SSL-certificaten in Storage Explorer via het dialoogvenster Edit ->SSL Certificates ->Import Certificates .
Certificaat importeren in Storage Explorer
- Zoek het certificaat op uw lokale computer.
- Ga in Storage Explorer naar Edit ->SSL Certificates ->Import Certificates and import your certificate.
Als u geen certificaat importeert, krijgt u een foutmelding:
unable to verify the first certificate
of self signed certificate in chain
Azurite toevoegen via HTTPS verbindingsreeks
Volg deze stappen om Azurite HTTPS toe te voegen aan Storage Explorer:
- Verkenner in-/uitschakelen selecteren
- Lokaal en gekoppeld selecteren
- Klik met de rechtermuisknop op Opslagaccounts en selecteer Verbinding maken naar Azure Storage.
- Selecteer Een verbindingsreeks gebruiken
- Selecteer Volgende.
- Voer een waarde in het veld Weergavenaam in.
- Voer de HTTPS-verbindingsreeks uit de vorige sectie van dit document in
- Selecteer Volgende
- Selecteer Verbinden
Werkruimtestructuur
De volgende bestanden en mappen kunnen worden gemaakt op de werkruimtelocatie bij het initialiseren van Azurite.
__blobstorage__
- Directory met De Blob-service Van Azure persistente binaire gegevens__queuestorage__
- Directory met De service Voor de wachtrij van Azurite persistente binaire gegevens__tablestorage__
- Directory met De tabelservice Van Azurite persistente binaire gegevens__azurite_db_blob__.json
- Metagegevensbestand voor de Blob-service van Azurite__azurite_db_blob_extent__.json
- Metagegevensbestand voor de Blob-blobservice van Azurite__azurite_db_queue__.json
- Metagegevensbestand voor de wachtrijservice van Azurite__azurite_db_queue_extent__.json
- Metagegevensbestand voor de wachtrijservice van Azurite__azurite_db_table__.json
- Metagegevensbestand voor de tabelservice Van Azurite__azurite_db_table_extent__.json
- Metagegevensbestand voor tabelservice-gebieden van Azurite
Als u Azurite wilt opschonen, verwijdert u bovenstaande bestanden en mappen en start u de emulator opnieuw op.
Verschillen tussen Azurite en Azure Storage
Er zijn functionele verschillen tussen een lokaal exemplaar van Azurite en een Azure Storage-account in de cloud.
Eindpunt- en verbindings-URL
De service-eindpunten voor Azurite verschillen van de eindpunten van een Azure Storage-account. De lokale computer voert geen domeinnaamomzetting uit, waardoor AzureIte-eindpunten lokale adressen moeten zijn.
Wanneer u een resource in een Azure Storage-account adresseert, maakt de accountnaam deel uit van de hostnaam van de URI. De resource die wordt geadresseerd, maakt deel uit van het URI-pad:
<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>
De volgende URI is een geldig adres voor een blob in een Azure Storage-account:
https://myaccount.blob.core.windows.net/mycontainer/myblob.txt
URL in IP-stijl
Omdat de lokale computer geen domeinnamen oplost, maakt de accountnaam deel uit van het URI-pad in plaats van de hostnaam. Gebruik de volgende URI-indeling voor een resource in Azurite:
http://<local-machine-address>:<port>/<account-name>/<resource-path>
Het volgende adres kan worden gebruikt voor toegang tot een blob in Azurite:
http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt
URL in productiestijl
U kunt het hosts-bestand desgewenst wijzigen om toegang te krijgen tot een account met url in productiestijl .
Voeg eerst een of meer regels toe aan het hosts-bestand. Voorbeeld:
127.0.0.1 account1.blob.localhost
127.0.0.1 account1.queue.localhost
127.0.0.1 account1.table.localhost
Stel vervolgens omgevingsvariabelen in om aangepaste opslagaccounts en sleutels in te schakelen:
set AZURITE_ACCOUNTS="account1:key1:key2"
U kunt meer accounts toevoegen. Zie de sectie Aangepaste opslagaccounts en sleutels van dit artikel.
Start Azurite en gebruik een aangepaste verbindingsreeks voor toegang tot uw account. In het volgende voorbeeld gaat de verbindingsreeks ervan uit dat de standaardpoorten worden gebruikt.
DefaultEndpointsProtocol=http;AccountName=account1;AccountKey=key1;BlobEndpoint=http://account1.blob.localhost:10000;QueueEndpoint=http://account1.queue.localhost:10001;TableEndpoint=http://account1.table.localhost:10002;
Krijg op deze manier geen toegang tot het standaardaccount met Azure Storage Explorer. Er is een fout opgetreden die opslagverkenner altijd accountnaam toevoegt in het URL-pad, wat fouten veroorzaakt.
Wanneer u Azurite standaard gebruikt met een URL in productiestijl, moet de accountnaam de hostnaam zijn in volledig gekwalificeerde domeinnaam, zoals http://devstoreaccount1.blob.localhost:10000/container
. Als u de URL in productiestijl wilt gebruiken met de accountnaam in het URL-pad, zoals http://foo.bar.com:10000/devstoreaccount1/container
, moet u de --disableProductStyleUrl
parameter gebruiken wanneer u Azurite start.
Als u host.docker.internal
als aanvraag-URI-host (bijvoorbeeld: http://host.docker.internal:10000/devstoreaccount1/container
) gebruikt, haalt Azurite de accountnaam op uit het aanvraag-URI-pad. Dit gedrag geldt ongeacht of u de parameter gebruikt bij het --disableProductStyleUrl
starten van Azurite.
Schalen en prestaties
Azurite biedt geen ondersteuning voor grote aantallen verbonden clients. Er is geen prestatiegarantie. Azuriet is bedoeld voor ontwikkelings- en testdoeleinden.
Foutafhandeling
Azurite is afgestemd op azure Storage-foutafhandelingslogica, maar er zijn verschillen. Foutberichten kunnen bijvoorbeeld verschillen, terwijl foutcodes worden uitgelijnd.
RA-GRS
Azurite ondersteunt geografisch redundante replicatie met leestoegang (RA-GRS). Voor opslagbronnen opent u de secundaire locatie door deze toe te -secondary
voegen aan de accountnaam. Het volgende adres kan bijvoorbeeld worden gebruikt voor toegang tot een blob met behulp van de alleen-lezen secundaire in Azurite:
http://127.0.0.1:10000/devstoreaccount1-secondary/mycontainer/myblob.txt
Ondersteuning voor tabellen
Ondersteuning voor tabellen in Azurite is momenteel beschikbaar als preview-versie. Zie het Table project Azurite V3 voor meer informatie.
Ondersteuning voor duurzame functies vereist tabellen.
Belangrijk
Ondersteuning voor Azurite voor Table Storage is momenteel in PREVIEW. Raadpleeg de Aanvullende voorwaarden voor Microsoft Azure-previews voor juridische voorwaarden die van toepassing zijn op Azure-functies die in bèta of preview zijn of die anders nog niet algemeen beschikbaar zijn.
Azurite is opensource
Bijdragen en suggesties voor Azurite zijn welkom. Ga naar de Projectpagina van Azurite GitHub of GitHub voor mijlpalen en werkitems die we bijhouden voor toekomstige functies en oplossingen voor fouten. Gedetailleerde werkitems worden ook bijgehouden in GitHub.
Volgende stappen
- Gebruik de Azure Storage Emulator voor het ontwikkelen en testen van documenten over de verouderde Azure Storage Emulator, die wordt vervangen door Azurite.
- In Azure Storage-verbindingsreeks s wordt uitgelegd hoe u een geldige Azure Storage-verbindingsreeks samenstelt.