GlassFlow CLI
The GlassFlow CLI provides a quick way to set up a local development environment for exploring and testing GlassFlow - an open-source ETL tool for real-time data processing from Kafka 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
Step 1: 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.
Step 2: 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