Blob Storage
Esta guía te muestra cómo trabajar con Azure Blob Storage localmente usando Azurite, Docker Compose y Python. Este lab demuestra cómo crear contenedores y subir y descargar blobs.
Prerrequisitos
Sección titulada «Prerrequisitos»- Docker instalado y en ejecución.
- Dev Containers extension instalada (opcional).
- Azure Storage extension (opcional, incluida en el Dev Container).
Cómo ejecutar
Sección titulada «Cómo ejecutar»-
Configurar el entorno:
Abre VS Code en la carpeta del proyecto y ejecuta este comando en la Paleta de Comandos:
Ventana de terminal > Dev Containers: Reopen in Container- Inicia la infraestructura: Lanza el contenedor de Azurite.
Ventana de terminal docker compose up -d - Ejecuta el script de setup para instalar herramientas y dependencias.
Ventana de terminal scripts/setup.sh
Usa la extensión Azurite de VS Code en lugar del contenedor.
- Desactiva el contenedor: Pon
COMPOSE_PROFILES=(vacío) en.envpara que el contenedor de Azurite no se levante. - Detén el contenedor de Azurite si está en ejecución.
Ventana de terminal docker compose stop azurite - Arranca el emulador desde la Paleta de Comandos:
Ventana de terminal > Azurite: Start - Ejecuta el script de setup para instalar herramientas y dependencias.
Ventana de terminal scripts/setup.sh
- Inicia la infraestructura: Lanza el contenedor de Azurite.
-
Ejecutar el ejemplo:
Ventana de terminal python main.py
Cómo depurar
Sección titulada «Cómo depurar»- Script de Python (main.py):
- Abre: Abre
main.pyen VS Code. - Ejecuta: Usa la configuración Python: main.py en la pestaña Run and Debug.
- Abre: Abre
Cómo testear
Sección titulada «Cómo testear»- All tests: Ejecuta el script automatizado:
scripts/run_tests.sh - Individually: Usa la pestaña Testing de VS Code para ejecutar o depurar tests concretos.
Validar resultados
Sección titulada «Validar resultados»Conecta la extensión Azure Storage a tu Azurite en ejecución para explorar contenedores y blobs visualmente.
- Abre: Abre la vista Azure en VS Code (icono de Azure en la barra lateral).
- Conecta: En Storage Accounts, haz clic en Attach Storage Account > Attach to a local emulator y acepta los valores por defecto (cuenta
devstoreaccount1). - Navega: Despliega Local Emulator > Blob Containers para ver
test-containeryhello.txt.
Limpieza
Sección titulada «Limpieza»docker compose down -vSolución de problemas
Sección titulada «Solución de problemas»| Problema | Solución |
|---|---|
| Puerto 10000 en uso | Otro Azurite lo tiene ocupado. Para el emulador de la extensión Azurite de VS Code (> Azurite: Close) o el otro contenedor antes de arrancar. |
| Conexión rechazada | Asegúrate de que Azurite está en ejecución: docker ps |
| Módulo no encontrado | Reinstala las dependencias: scripts/setup.sh |
azurite.skipApiVersionCheck is not a registered configuration | Desajuste de versión de API REST. El lab ya arranca Azurite con --skipApiVersionCheck; recréalo con docker compose up -d azurite y recarga la ventana (> Developer: Reload Window). |
Storage Account devstoreaccount1 is already attached | Ya está conectado. Localiza el nodo Local Emulator existente y haz Refresh en lugar de volver a adjuntarlo. |