Developer Quick-Start

Installation

Quick-Start Install #

Deploy the entire core stack with a single command:

curl -sL https://raw.githubusercontent.com/streamshub/developer-quickstart/main/install.sh | bash

The script:

  1. Checks prerequisites (kubectl, IngressClass)
  2. Installs operators and CRDs (Phase 1)
  3. Waits for each operator to become ready
  4. Deploys Kafka, Registry, and Console instances (Phase 2)
  5. Verifies all operands reach their Ready state

Install with an Overlay #

Overlays extend the core stack with optional components. To install with an overlay, set the OVERLAY variable:

curl -sL https://raw.githubusercontent.com/streamshub/developer-quickstart/main/install.sh | OVERLAY=<name> bash

See Overlays for the list of available overlays and what each one adds.

Configuration #

The install script accepts the following environment variables:

VariableDefaultDescription
REPOstreamshub/developer-quickstartGitHub repository path
REFmainGit ref, branch, or tag
OVERLAY(empty)Overlay to apply (e.g. metrics)
TIMEOUT300sWait timeout for operators and operands (per resource)
SKIP_VERIFY(empty)Skip operand readiness verification (set to any value)
LOCAL_DIR(empty)Use a local directory as the source of install files instead of GitHub URLs

Examples:

# Install a specific version
curl -sL https://raw.githubusercontent.com/streamshub/developer-quickstart/main/install.sh | REF=v1.0.0 bash

# Increase timeout for slower clusters
curl -sL https://raw.githubusercontent.com/streamshub/developer-quickstart/main/install.sh | TIMEOUT=300s bash

Manual Install #

If you prefer step-by-step control, the stack is installed in two phases.

Phase 1 — Operators and CRDs #

kubectl apply -k 'https://github.com/streamshub/developer-quickstart//overlays/core/base?ref=main'

Optionally, you can wait for the operators to become ready using the commands below:

kubectl wait --for=condition=Available deployment/strimzi-cluster-operator -n strimzi --timeout=120s
kubectl wait --for=condition=Available deployment/apicurio-registry-operator -n apicurio-registry --timeout=120s
kubectl wait --for=condition=Available deployment/streamshub-console-operator -n streamshub-console --timeout=120s

Phase 2 — Operands #

kubectl apply -k 'https://github.com/streamshub/developer-quickstart//overlays/core/stack?ref=main'

Manual Install with an Overlay #

For overlays, replace overlays/core with overlays/<name> in the commands above. Each overlay may add additional operators that need to be waited on during Phase 1. See the specific overlay page under Overlays for the full manual install commands.

Install from a Local Checkout #

When developing or testing changes to the kustomization files, point the scripts at a local directory:

# Clone and install from local
git clone https://github.com/streamshub/developer-quickstart.git
cd developer-quickstart
LOCAL_DIR=. ./install.sh

When LOCAL_DIR is set, REPO and REF are ignored — all kustomization paths resolve relative to the given directory. You can also pass an absolute path:

LOCAL_DIR=/home/user/repos/developer-quickstart ./install.sh

Verify the Installation #

The install script automatically verifies that all operands (Kafka, Registry, Console) reach their Ready state before returning. If verification succeeds, it prints access instructions for the Console.

To skip verification (e.g. for CI pipelines with their own checks):

curl -sL https://raw.githubusercontent.com/streamshub/developer-quickstart/main/install.sh | SKIP_VERIFY=1 bash

If verification times out or you skipped it, confirm all components are running manually:

# Check operators
kubectl get deployment -n strimzi strimzi-cluster-operator
kubectl get deployment -n apicurio-registry apicurio-registry-operator
kubectl get deployment -n streamshub-console streamshub-console-operator

# Check operands
kubectl get kafka -n kafka
kubectl get apicurioregistry3 -n apicurio-registry
kubectl get console -n streamshub-console

All operator deployments should show READY 1/1. Custom resources should reach Ready status.

If you installed with an overlay, check its page under Overlays for additional verification steps.