Metabase
Esta guía te muestra cómo trabajar con Metabase localmente usando Docker Compose, PostgreSQL y SQLAlchemy. Este lab demuestra cómo insertar datos en una base de datos PostgreSQL y explorarlos usando Metabase.
Prerrequisitos
Sección titulada «Prerrequisitos»- Docker instalado y en ejecución.
- Dev Containers extension instalada (opcional).
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 ContainerVentana de terminal pip3 install uv && uv sync -
Iniciar la infraestructura: Lanza Metabase y PostgreSQL:
Ventana de terminal docker compose up -d -
Ejecutar el ejemplo:
Ventana de terminal python main.py
Validar resultados
Sección titulada «Validar resultados»- Abre la UI de Metabase:
Ventana de terminal http://localhost:3000 - Completa la configuración inicial y crea una cuenta de administrador.
- Conecta PostgreSQL usando las credenciales definidas en
.env(METABASE_DB,METABASE_USER,METABASE_PASSWORD,POSTGRES_HOST,POSTGRES_PORT). - Explora la tabla
productsy crea visualizaciones.
Conecta usando DBeaver con los detalles de conexión definidos en .env y ejecuta:
SELECT * FROM products;Limpieza
Sección titulada «Limpieza»docker compose down -vSolución de problemas
Sección titulada «Solución de problemas»| Problema | Solución |
|---|---|
Puerto 3000 o 5432 en uso | Cambia el mapeo de puertos en docker-compose.yml y reinicia. |
| Metabase no carga | Espera a que se inicialice — revisa los logs: docker compose logs -f metabase (busca “Initialization COMPLETE”). |
| Conexión rechazada | Asegúrate de que ambos contenedores están en ejecución: docker ps |
| Módulo no encontrado | Reinstala las dependencias: pip3 install uv && uv sync |