Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
O emulador de código aberto Azurite fornece um ambiente local gratuito para testar seus aplicativos baseados em nuvem. Quando estiver satisfeito com a forma como a sua aplicação está a funcionar localmente, mude para utilizar uma conta de Armazenamento do Azure na nuvem.
O Azurite é um emulador de armazenamento leve escrito em JavaScript e executado em Node.js que simula o serviço de Armazenamento do Azure para desenvolvimento local. Ele suporta os serviços de armazenamento Blob, Fila e Tabela e fornece suporte multiplataforma no Windows, Linux e macOS. Para obter ajuda com a instalação e execução do Azurite, consulte Instalar e executar o emulador do Azurite.
O Azurite também permite que os desenvolvedores executem testes em um ambiente de armazenamento local, simulando o comportamento do Azure, que é crucial para a integração e os testes de ponta a ponta. Para ler mais sobre como usar o Azurite para testes automatizados, consulte Usar o Azurite para executar testes automatizados.
O Azurite substitui o Emulador de Armazenamento do Azure e continua a ser atualizado para dar suporte às versões mais recentes das APIs de Armazenamento do Azure.
Diferenças entre o Azurite e o Armazenamento do Azure
Há diferenças funcionais entre uma instância local do Azurite e uma conta de Armazenamento do Azure na nuvem.
Important
O Azurite suporta apenas os serviços de armazenamento Blob, Fila e Tabela. Ele não oferece suporte a Arquivos do Azure ou ao Azure Data Lake Storage Gen2, mas fornece suporte entre plataformas no Windows, Linux e macOS.
Ponto de extremidade e URL de conexão
Os pontos de extremidade de serviço para Azurite são diferentes dos pontos de extremidade de uma conta de Armazenamento do Azure. O computador local não faz resolução de nomes de domínio, exigindo que os pontos de extremidade Azurite sejam endereços locais.
Quando você aborda um recurso em uma conta de Armazenamento do Azure, o nome da conta faz parte do nome do host URI. O recurso que está sendo endereçado faz parte do caminho do URI:
<http|https>://<account-name>.<service-name>.core.windows.net/<resource-path>
O seguinte URI é um endereço válido para um blob em uma conta de Armazenamento do Azure:
https://myaccount.blob.core.windows.net/mycontainer/myblob.txt
URL no estilo IP
Como o computador local não resolve nomes de domínio, o nome da conta faz parte do caminho do URI em vez do nome do host. Use o seguinte formato de URI para um recurso no Azurite:
http://<local-machine-address>:<port>/<account-name>/<resource-path>
O seguinte endereço pode ser usado para acessar um blob no Azurite:
http://127.0.0.1:10000/myaccount/mycontainer/myblob.txt
URL de estilo de produção
Opcionalmente, você pode modificar seu arquivo hosts para acessar uma conta com URL de estilo de produção .
Primeiro, adicione uma ou mais linhas ao seu arquivo hosts. Por exemplo:
127.0.0.1 account1.blob.localhost
127.0.0.1 account1.queue.localhost
127.0.0.1 account1.table.localhost
Em seguida, defina variáveis de ambiente para habilitar contas e chaves de armazenamento personalizadas:
set AZURITE_ACCOUNTS="account1:key1:key2"
Você pode adicionar mais contas. Consulte a secção Contas e chaves de armazenamento personalizadas do artigo Ligar à Azurite .
Inicie o Azurite e utilize uma cadeia de ligação personalizada para aceder à sua conta. No exemplo a seguir, a cadeia de conexão assume que as portas padrão são usadas.
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ão acesse a conta padrão dessa maneira com o Gerenciador de Armazenamento do Azure. Há um bug de que o Storage Explorer está sempre adicionando o nome da conta no caminho da URL, causando falhas.
Por padrão, ao usar o Azurite com uma URL de estilo de produção, o nome da conta deve ser o nome do host no nome de domínio totalmente qualificado, como http://devstoreaccount1.blob.localhost:10000/container
. Para usar a URL de estilo de produção com o nome da conta no caminho da URL, como http://foo.bar.com:10000/devstoreaccount1/container
, certifique-se de usar o parâmetro ao iniciar o --disableProductStyleUrl
Azurite.
Se você usar host.docker.internal
como host de Uri de solicitação (Por exemplo: http://host.docker.internal:10000/devstoreaccount1/container
), o Azurite obterá o nome da conta do caminho de Uri de solicitação. Esse comportamento é verdadeiro independentemente de você usar o parâmetro quando você inicia o --disableProductStyleUrl
Azurite.
Dimensionamento e desempenho
O Azurite não suporta um grande número de clientes conectados. Não há garantia de desempenho. A Azurite destina-se a fins de desenvolvimento e teste.
Tratamento de erros
O Azurite está alinhado com a lógica de tratamento de erros do Armazenamento do Azure, mas há diferenças. Por exemplo, as mensagens de erro podem ser diferentes, enquanto os códigos de status de erro se alinham.
RA-GRS
O Azurite suporta replicação com redundância geográfica de acesso de leitura (RA-GRS). Para recursos de armazenamento, acesse o local secundário anexando -secondary
ao nome da conta. Por exemplo, o seguinte endereço pode ser usado para acessar um blob usando o secundário somente leitura no Azurite:
http://127.0.0.1:10000/devstoreaccount1-secondary/mycontainer/myblob.txt
Suporte de mesa
O suporte para tabelas no Azurite está atualmente em pré-visualização. Para obter mais informações, consulte o projeto Azurite V3 Table .
Suporte para funções duráveis requer tabelas.
Important
O suporte do Azurite para armazenamento de tabela está atualmente em pré-visualização. Consulte os Termos de Utilização Complementares das Visualizações Prévias do Microsoft Azure para obter os termos legais que se aplicam às funcionalidades do Azure que estão em beta, em pré-visualização ou que ainda não foram lançadas para disponibilidade geral.
Azurite é open-source
Contribuições e sugestões para a Azurite são bem-vindas. Vá para a página do projeto Azurite GitHub ou para problemas do GitHub para ver marcos e itens de trabalho que estamos acompanhando para recursos futuros e correções de bugs. Itens de trabalho detalhados também são rastreados no GitHub.
Estrutura do espaço de trabalho
Os seguintes arquivos e pastas podem ser criados no local do espaço de trabalho ao inicializar o Azurite.
-
__blobstorage__
- Diretório contendo dados binários persistentes do serviço Azurite blob -
__queuestorage__
- Diretório contendo dados binários persistentes do serviço de fila Azurite -
__tablestorage__
- Diretório contendo dados binários persistentes do serviço de tabela Azurite -
__azurite_db_blob__.json
- Arquivo de metadados do serviço Azurite blob -
__azurite_db_blob_extent__.json
- Arquivo de metadados de extensão do serviço Azurite blob -
__azurite_db_queue__.json
- Arquivo de metadados do serviço de fila Azurite -
__azurite_db_queue_extent__.json
- Arquivo de metadados de extensão do serviço de fila Azurite -
__azurite_db_table__.json
- Arquivo de metadados do serviço de tabela Azurite -
__azurite_db_table_extent__.json
- Arquivo de metadados de extensão do serviço de tabela Azurite
Para limpar o Azurite, exclua os arquivos e pastas e reinicie o emulador.
Próximos passos
- Instalar e executar o emulador Azurite descreve como instalar e executar o Azurite em sua máquina local.
- Connect to Azurite with SDKs and tools explica como se conectar ao Azurite usando vários SDKs e ferramentas de Armazenamento do Azure.
- Use o Emulador de Armazenamento do Azure para desenvolver e testar documentos do Emulador de Armazenamento do Azure herdado, substituído pelo Azurite.