Compartir a través de


Instalación y ejecución del emulador de Azurite

El uso del emulador de Azurite permite a los desarrolladores realizar un seguimiento rápido del desarrollo de herramientas y aplicaciones basadas en la nube sin necesidad de conectividad a Internet.

En este artículo se proporcionan instrucciones para instalar y ejecutar Azurite, así como configurarlo para el desarrollo local. Para más información sobre el uso de Azurite, consulte Uso del emulador de Azurite para el desarrollo local de Azure Storage.

Azurite reemplaza al emulador de Azure Storage y continúa actualizándose para admitir las versiones más recientes de las API de Azure Storage.

Instalación de Azurite

Azurite se puede instalar y ejecutar mediante varios métodos, como npm, Docker y Visual Studio Code. En este vídeo se muestra cómo instalar y ejecutar el emulador de Azurite.

Los pasos del vídeo también se describen en las secciones siguientes. Seleccione cualquiera de estas pestañas para ver instrucciones específicas relevantes para su entorno.

Azurite está disponible automáticamente con Visual Studio 2022. El ejecutable de Azurite se actualiza como parte de las nuevas versiones de la versión de Visual Studio. Si ejecuta una versión anterior de Visual Studio, puede instalar Azurite mediante node Package Manager (npm), DockerHub o clonando el repositorio de GitHub de Azurite.

Ejecución de Azurite

Seleccione cualquiera de las pestañas siguientes para ver instrucciones específicas relevantes para su entorno.

Para usar Azurite con la mayoría de los tipos de proyecto en Visual Studio, primero debe ejecutar el ejecutable de Azurite. Una vez que se está ejecutando el archivo ejecutable, Azurite escucha las solicitudes de conexión de la aplicación. Para más información, consulte Ejecución de Azurite desde la línea de comandos.

En el caso de los proyectos de Azure Functions y ASP.NET , puede elegir configurar el proyecto para iniciar Azurite automáticamente. Esta configuración se realiza durante la configuración del proyecto. Aunque esta configuración del proyecto inicia Azurite automáticamente, Visual Studio no expone opciones de configuración detalladas de Azurite. Para personalizar las opciones de configuración detalladas de Azurite, ejecute el ejecutable de Azurite antes de iniciar Visual Studio.

Para más información sobre cómo configurar proyectos de Azure Functions y proyectos de ASP.NET para iniciar Azurite automáticamente, consulte las instrucciones siguientes:

Ubicación del archivo ejecutable de Azurite

En la tabla siguiente se muestra la ubicación del ejecutable de Azurite para distintas versiones de Visual Studio que se ejecutan en un equipo Windows:

Versión de Visual Studio Ubicación ejecutable de 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

Ejecución de Azurite desde la línea de comandos

Puede encontrar el archivo ejecutable de Azurite en la carpeta extensions de la instalación de Visual Studio, como se detalla en la tabla de ubicación del archivo ejecutable de Azurite.

Vaya a la ubicación adecuada e inicie azurite.exe. Después de ejecutar el archivo ejecutable, Azurite escucha las conexiones.

Para obtener más información sobre las opciones de línea de comandos disponibles para configurar Azurite, consulte Opciones de línea de comandos.

Ejecución de Azurite desde un proyecto de Azure Functions

En Visual Studio 2022, cree un proyecto de Azure Functions . Al establecer las opciones del proyecto, marque el cuadro con la etiqueta Usar Azurite para la cuenta de almacenamiento en tiempo de ejecución.

Captura de pantalla que muestra cómo establecer Azurite para que sea la cuenta de almacenamiento en tiempo de ejecución de un proyecto de Azure Functions.

Después de crear el proyecto, Azurite se inicia automáticamente. La ubicación del archivo ejecutable de Azurite se detalla en la tabla de ubicación del archivo ejecutable de Azurite. La salida es similar a la siguiente captura de pantalla:

Captura de pantalla que muestra la salida después de establecer Azurite como la cuenta de almacenamiento en tiempo de ejecución de un proyecto de Azure Functions.

Esta opción de configuración se puede cambiar más adelante modificando las dependencias de servicios conectados del proyecto.

Ejecución de Azurite desde un proyecto de ASP.NET

En Visual Studio 2022, cree un proyecto ASP.NET Core Web App . A continuación, abra el cuadro de diálogo Servicios conectados , seleccione Agregar una dependencia de servicio y, a continuación, seleccione Emulador de Storage Azurite.

Captura de pantalla que muestra cómo agregar Azurite como dependencia a un proyecto de ASP.NET.

En el cuadro de diálogo Configurar emulador de Azurite storage, establezca el campo StorageConnectionStringNombre de cadena de conexión en y, a continuación, seleccione Finalizar.

Captura de pantalla que muestra cómo configurar una cadena de conexión para usar Azurite con un proyecto de ASP.NET.

Cuando se complete la configuración, seleccione Cerrar y el emulador de Azurite se inicie automáticamente. La ubicación del archivo ejecutable de Azurite se detalla en la tabla de ubicación del archivo ejecutable de Azurite. La salida es similar a la siguiente captura de pantalla:

Captura de pantalla que muestra la salida después de conectar un proyecto de ASP.NET al emulador de Azurite.

Esta opción de configuración se puede cambiar más adelante modificando las dependencias de servicios conectados del proyecto.

Opciones de línea de comandos

En esta sección se detallan los modificadores de línea de comandos disponibles al iniciar Azurite.

Help

Opcional : obtenga ayuda de línea de comandos mediante el -h modificador o --help .

azurite -h
azurite --help

Host de escucha

Opcional : de forma predeterminada, Azurite escucha 127.0.0.1 como servidor local. Use el --blobHost modificador para establecer la dirección en sus requisitos.

Aceptar solicitudes solo en el equipo local:

azurite --blobHost 127.0.0.1

Permitir solicitudes remotas:

azurite --blobHost 0.0.0.0

Precaución

Permitir solicitudes remotas podría hacer que el sistema sea vulnerable a ataques externos.

Configuración del puerto de escucha

Opcional : de forma predeterminada, Azurite escucha blob service en el puerto 10000. Use el --blobPort modificador para especificar el puerto de escucha que necesita.

Nota:

Después de usar un puerto personalizado, debe actualizar la cadena de conexión o la configuración correspondiente en las herramientas o SDK de Azure Storage.

Personalice el puerto de escucha de Blob Service:

azurite --blobPort 8888

Deje que el sistema seleccione automáticamente un puerto disponible:

azurite --blobPort 0

El puerto en uso se muestra durante el inicio de Azurite.

Ruta de acceso del área de trabajo

Opcional : Azurite almacena datos en el disco local durante la ejecución. Use o -l--location cambie para especificar una ruta de acceso como ubicación del área de trabajo. De forma predeterminada, se usa el directorio de trabajo del proceso actual. Tenga en cuenta el "l" en minúsculas.

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

Registro de acceso

Opcional : de forma predeterminada, el registro de acceso se muestra en la ventana de la consola. Deshabilite la presentación del registro de acceso mediante el -s modificador o --silent .

azurite -s
azurite --silent

Registro de depuración

Opcional : el registro de depuración incluye información detallada sobre cada seguimiento de la pila de solicitudes y excepciones. Habilite el registro de depuración proporcionando una ruta de acceso de archivo local válida al -d modificador o --debug .

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

Modo flexible

Opcional : de forma predeterminada, Azurite aplica el modo strict para bloquear los encabezados y parámetros de solicitud no admitidos. Deshabilite el modo strict mediante el -L modificador o --loose . Tenga en cuenta el capital 'L'.

azurite -L
azurite --loose

Versión

Opcional : muestra el número de versión de Azurite instalado mediante el -v modificador o --version .

azurite -v
azurite --version

Configuración del certificado (HTTPS)

Opcional : de forma predeterminada, Azurite usa el protocolo HTTP. Puede habilitar el modo HTTPS proporcionando una ruta de acceso a un archivo de certificado correo mejorado de privacidad (.pem) o intercambio de información personal (.pfx) al --cert modificador. Se requiere HTTPS para conectarse a Azurite mediante la autenticación de OAuth.

Cuando --cert se proporciona para un archivo PEM, debe proporcionar un modificador correspondiente --key .

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

Cuando --cert se proporciona para un archivo PFX, debe proporcionar un modificador correspondiente --pwd .

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

Configuración de HTTPS

Para obtener información detallada sobre cómo generar archivos PEM y PFX, consulte Configuración de HTTPS.

Configuración de OAuth

Opcional : habilite la autenticación de OAuth para Azurite mediante el --oauth modificador .

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

Nota:

OAuth requiere un punto de conexión HTTPS. Asegúrese de que HTTPS está habilitado proporcionando --cert el modificador junto con el --oauth modificador.

Azurite admite la autenticación básica especificando el basic parámetro en el --oauth modificador. Azurite realiza la autenticación básica, como validar el token de portador entrante, comprobar el emisor, la audiencia y la expiración. Azurite no comprueba la firma ni los permisos del token. Para más información sobre la autorización, consulte Conexión a Azurite con SDK y herramientas.

Omitir comprobación de la versión de LA API

Opcional : al iniciarse, Azurite comprueba que la versión de API solicitada es válida. El siguiente comando omite la comprobación de la versión de la API:

azurite --skipApiVersionCheck

Deshabilitación de la dirección URL de estilo de producción

Opcional. Cuando se usa el nombre de dominio completo en lugar de la dirección IP en el host de URI de solicitud, Azurite analiza el nombre de la cuenta de almacenamiento del host de URI de solicitud de forma predeterminada. Puede forzar el análisis del nombre de la cuenta de almacenamiento desde la ruta de acceso del URI de solicitud mediante --disableProductStyleUrl:

azurite --disableProductStyleUrl

Persistencia en memoria

Opcional. De forma predeterminada, los metadatos de blob y cola se conservan en el disco y el contenido se conserva en la medida en que los archivos. Table Storage conserva todos los datos en el disco. Puede deshabilitar la conservación de los datos en el disco y almacenar solo los datos en memoria. En el escenario de persistencia en memoria, si se finaliza el proceso de Azurite, se pierden todos los datos. El comportamiento de persistencia predeterminado se puede invalidar mediante la opción siguiente:

azurite --inMemoryPersistence

Esta configuración se rechaza cuando la implementación de metadatos basados en SQL está habilitada (a través AZURITE_DBde ) o cuando se especifica la --location opción .

Límite de memoria de extensión

Opcional. De forma predeterminada, el almacén de extensiones en memoria (para el contenido de blobs y colas) está limitado a 50% de la memoria total en el equipo host. El total se evalúa mediante os.totalmem(). Este límite se puede invalidar mediante la siguiente opción:

azurite --extentMemoryLimit <megabytes>

No hay ninguna restricción en el valor especificado para esta opción. Sin embargo, la memoria virtual puede usarse si el límite supera la cantidad de memoria física disponible, tal como lo proporciona el sistema operativo. Un límite alto podría provocar errores de memoria insuficiente o un rendimiento reducido. Esta opción se rechaza cuando --inMemoryPersistence no se especifica.

Para más información, consulte Uso del almacenamiento en memoria.

Deshabilitación de la recopilación de telemetría

Opcional. De forma predeterminada, Azurite recopila datos de telemetría para ayudar a mejorar el producto. Use la opción para deshabilitar la --disableTelemetry recopilación de datos de telemetría para la ejecución actual de Azurite, como el siguiente comando:

azurite --disableTelemetry

Pasos siguientes