Note
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de changer d’annuaire.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de changer d’annuaire.
L’émulateur open source Azurite fournit un environnement local gratuit pour tester vos applications cloud. Lorsque vous êtes satisfait de la façon dont votre application fonctionne localement, basculez vers l’utilisation d’un compte de stockage Azure dans le cloud.
Azurite est un émulateur de stockage léger écrit en JavaScript et s’exécute sur Node.js qui simule le service stockage Azure pour le développement local. Il prend en charge les services de stockage Blob, File d’attente et Table et fournit une prise en charge multiplateforme sur Windows, Linux et macOS. Pour obtenir de l’aide sur l’installation et l’exécution d’Azurite, consultez Installer et exécuter l’émulateur Azurite.
Azurite permet également aux développeurs d’exécuter des tests sur un environnement de stockage local, en simulant le comportement d’Azure, ce qui est essentiel pour les tests d’intégration et de bout en bout. Pour en savoir plus sur l’utilisation d’Azurite pour les tests automatisés, consultez Utiliser Azurite pour exécuter des tests automatisés.
Azurite remplace l’émulateur de stockage Azure et continue d’être mis à jour pour prendre en charge les dernières versions des API stockage Azure.
Différences entre Azurite et Stockage Azure
Il existe des différences fonctionnelles entre une instance locale d’Azurite et un compte de stockage Azure dans le cloud.
Important
Azurite prend uniquement en charge les services de stockage Blob, File d’attente et Table. Il ne prend pas en charge Azure Files ou Azure Data Lake Storage Gen2, mais fournit une prise en charge multiplateforme sur Windows, Linux et macOS.
URL de point de terminaison et de connexion
Les points de terminaison de service pour Azurite sont différents des points de terminaison d’un compte de stockage Azure. L’ordinateur local ne résout pas les noms de domaine, ce qui nécessite que les points de terminaison Azurite soient des adresses locales.
Lorsque vous adressez une ressource dans un compte de stockage Azure, le nom du compte fait partie du nom d’hôte d’URI. La ressource en cours d’adressage fait partie du chemin d’URI :
<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>
L’URI suivant est une adresse valide pour un objet blob dans un compte de stockage Azure :
https://myaccount.blob.core.windows.net/mycontainer/myblob.txt
URL de style IP
Étant donné que l’ordinateur local ne résout pas les noms de domaine, le nom du compte fait partie du chemin d’URI au lieu du nom d’hôte. Utilisez le format d’URI suivant pour une ressource dans Azurite :
http://<local-machine-address>:<port>/<account-name>/<resource-path>
L’adresse suivante peut être utilisée pour accéder à un objet blob dans Azurite :
http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt
URL de style de production
Si vous le souhaitez, vous pouvez modifier votre fichier hosts pour accéder à un compte avec une URL de style production .
Tout d’abord, ajoutez une ou plusieurs lignes à votre fichier hosts. Par exemple:
127.0.0.1 account1.blob.localhost
127.0.0.1 account1.queue.localhost
127.0.0.1 account1.table.localhost
Ensuite, définissez des variables d’environnement pour activer les comptes et clés de stockage personnalisés :
set AZURITE_ACCOUNTS="account1:key1:key2"
Vous pouvez ajouter d’autres comptes. Consultez la section Comptes et clés de stockage personnalisés de l’article Se connecter à Azurite .
Démarrez Azurite et utilisez une chaîne de connexion personnalisée pour accéder à votre compte. Dans l’exemple suivant, la chaîne de connexion suppose que les ports par défaut sont utilisés.
DefaultEndpointsProtocol=http;AccountName=account1;AccountKey=key1;BlobEndpoint=http://account1.blob.localhost:10000;QueueEndpoint=http://account1.queue.localhost:10001;TableEndpoint=http://account1.table.localhost:10002;
N’accédez pas au compte par défaut de cette façon avec l’Explorateur Stockage Azure. Il existe un bogue que l’Explorateur Stockage ajoute toujours le nom du compte dans le chemin d’URL, ce qui provoque des échecs.
Par défaut, lors de l’utilisation d’Azurite avec une URL de style production, le nom du compte doit être le nom d’hôte dans un nom de domaine complet tel que http://devstoreaccount1.blob.localhost:10000/container. Pour utiliser l’URL de style production avec le nom du compte dans le chemin d’URL, par http://foo.bar.com:10000/devstoreaccount1/containerexemple, veillez à utiliser le --disableProductStyleUrl paramètre lorsque vous démarrez Azurite.
Si vous utilisez host.docker.internal comme hôte d’URI de requête (par exemple : http://host.docker.internal:10000/devstoreaccount1/container), Azurite obtient le nom du compte à partir du chemin de l’URI de requête. Ce comportement est vrai, que vous utilisiez le --disableProductStyleUrl paramètre lorsque vous démarrez Azurite.
Mise à l’échelle et niveau de performance
Azurite ne prend pas en charge un grand nombre de clients connectés. Il n’y a aucune garantie de performances. Azurite est destiné à des fins de développement et de test.
Gestion des erreurs
Azurite est aligné sur la logique de gestion des erreurs de stockage Azure, mais il existe des différences. Par exemple, les messages d’erreur peuvent être différents, tandis que les codes d’état d’erreur s’alignent.
RA-GRS
Azurite prend en charge la réplication géoredondante en lecture (RA-GRS). Pour les ressources de stockage, accédez à l’emplacement secondaire en ajoutant -secondary le nom du compte. Par exemple, l’adresse suivante peut être utilisée pour accéder à un objet blob à l’aide du site secondaire en lecture seule dans Azurite :
http://127.0.0.1:10000/devstoreaccount1-secondary/mycontainer/myblob.txt
Prise en charge des tables
La prise en charge des tables dans Azurite est actuellement en préversion. Pour plus d’informations, consultez le projet Table Azurite V3 .
La prise en charge des fonctions durables nécessite des tables.
Important
La prise en charge d’Azurite pour le stockage table est actuellement en préversion. Consultez les Conditions d’utilisation supplémentaires pour les préversions Microsoft Azure pour les conditions légales qui s’appliquent aux fonctionnalités Azure en version bêta, en préversion ou qui ne sont pas encore publiées en disponibilité générale.
Azurite est open source
Les contributions et suggestions pour Azurite sont bienvenues. Accédez à la page de projet GitHub Azurite ou aux problèmes GitHub pour les jalons et les éléments de travail que nous suivons pour les fonctionnalités à venir et les correctifs de bogues. Les éléments de travail détaillés sont également suivis dans GitHub.
Structure de l’espace de travail
Les fichiers et dossiers suivants peuvent être créés à l’emplacement de l’espace de travail lors de l’initialisation d’Azurite.
-
__blobstorage__- Répertoire contenant les données binaires persistantes du service blob Azurite -
__queuestorage__- Répertoire contenant les données binaires persistantes du service de file d’attente Azurite -
__tablestorage__- Répertoire contenant les données binaires persistantes du service de table Azurite -
__azurite_db_blob__.json- Fichier de métadonnées du service blob Azurite -
__azurite_db_blob_extent__.json- Fichier de métadonnées d’extension du service blob Azurite -
__azurite_db_queue__.json- Fichier de métadonnées du service de file d’attente Azurite -
__azurite_db_queue_extent__.json- Fichier de métadonnées d’extension du service de file d’attente Azurite -
__azurite_db_table__.json- Fichier de métadonnées du service de table Azurite -
__azurite_db_table_extent__.json- Fichier de métadonnées d’extension du service de table Azurite
Pour nettoyer Azurite, supprimez les fichiers et dossiers et redémarrez l’émulateur.
Étapes suivantes
- Installer et exécuter l’émulateur Azurite décrit comment installer et exécuter Azurite sur votre ordinateur local.
- Se connecter à Azurite avec des kits de développement logiciel (SDK) et des outils explique comment se connecter à Azurite à l’aide de différents kits de développement logiciel (SDK) et outils de stockage Azure.
- Utilisez l’émulateur de stockage Azure pour le développement et les documents de test de l’émulateur de stockage Azure hérité, remplacé par Azurite.