GlassFlow CLI
The GlassFlow CLI provides a quick way to set up a local development environment for exploring and testing GlassFlow - an open-source streaming ETL for multiple data sources to ClickHouse.
- The GlassFlow CLI is designed for local testing, demos, and exploration only.
- For production deployments, use the official GlassFlow Helm charts.
- The CLI creates a local Kubernetes cluster using Kind and deploys all necessary components.
Prerequisites
Before installing the GlassFlow CLI, ensure you have:
- Docker (or compatible runtime like Docker Desktop, OrbStack, Colima, or Podman)
- Helm: install via Helm docs or run:
brew install helm - kubectl (installed automatically via Homebrew, or install manually)
Install CLI
Verify installation
glassflow versionYou should see the version number of the installed GlassFlow CLI.
Quick Start
Start GlassFlow
glassflow upThis will:
- Create a Kind cluster (if needed)
- Download pre-built container images (first run only, cached for future runs)
- Install GlassFlow ETL (API, UI, operator, NATS, PostgreSQL) via Helm
- Wait for services to be ready
- Configure port forwarding for UI and API access
Once ready, you can access:
- GlassFlow UI: http://localhost:30080
- GlassFlow API: http://localhost:30180
From the UI, you can connect GlassFlow to your own Kafka and ClickHouse instances.
Set up the demo (optional)
To see data flowing end-to-end with a local Kafka and ClickHouse:
glassflow setup-demoThis will:
- Install Kafka (kafka namespace) and ClickHouse (clickhouse namespace)
- Create a demo pipeline, ClickHouse table, and Kafka topic
- Start a data producer that sends sample events
- Set up port forwarding for ClickHouse HTTP (http://localhost:30090 )
You can also run both steps in one command: glassflow up --demo
After running glassflow setup-demo, a pipeline ingests events from the demo_events Kafka topic into the demo_events table in ClickHouse. You can view this pipeline in the GlassFlow UI.
Stop the environment
When you’re done testing, stop and clean up the local environment:
glassflow downThis will stop all running services, remove the Kind cluster, and clean up all resources.
What gets installed
After glassflow up:
- Kind: Local Kubernetes cluster
- GlassFlow ETL: Real-time streaming ETL service (API, UI, operator, NATS, PostgreSQL)
After glassflow setup-demo (optional):
- Kafka: Message broker (kafka namespace, Bitnami Helm chart)
- ClickHouse: Columnar database (clickhouse namespace, Bitnami Helm chart)
- A demo pipeline, Kafka topic, ClickHouse table, and a data producer