One Binary
Run as Standalone for development, Cluster for production, or Edge for IoT ingestion, all from the same danube-broker binary with no external dependencies. Learn more →
Download the latest binary from the releases page or pull the container image.
Start a broker and test with the CLI:
# Start the brokerdanube-broker --mode standalone --data-dir ./danube-data
# Produce messagesdanube-cli produce -s http://127.0.0.1:6650 -t /default/demo -c 10 -m "Hello, Danube!"
# Consume messagesdanube-cli consume -s http://127.0.0.1:6650 -t /default/demo -m my_subOr run a single broker in a container:
docker run -p 6650:6650 -p 50051:50051 \ ghcr.io/danube-messaging/danube-broker:latest \ --mode standalone --data-dir /data \ --broker-addr 0.0.0.0:6650 --admin-addr 0.0.0.0:50051Run the following command on each of your 3 nodes to form a Raft consensus cluster:
danube-broker --config-file danube_broker.yml \ --broker-addr 0.0.0.0:6650 --raft-addr 0.0.0.0:7650 \ --data-dir ./data/raft \ --seed-nodes "node1:7650,node2:7650,node3:7650"Or use Docker Compose to start a 3-node cluster with Prometheus monitoring:
git clone https://github.com/danube-messaging/danube.gitcd danube/docker/quickstartdocker-compose up -dCheck cluster health:
danube-admin brokers listdanube-admin brokers balanceMQTT gateway for IoT devices at the edge. Validates payloads against schemas, buffers into a local WAL that survives outages, and replicates to your central cluster over gRPC.
danube-broker --mode edge --data-dir ./edge-data --edge-config edge.yamlOne Binary
Run as Standalone for development, Cluster for production, or Edge for IoT ingestion, all from the same danube-broker binary with no external dependencies. Learn more →
Pub/Sub & Streaming
Publish to topics, consume via named subscriptions. Use best-effort dispatch for fire-and-forget real-time workloads, or persistent dispatch with WAL-backed at-least-once delivery, acknowledgments, and dead-letter queues. Learn more →
Resilient Clusters
Embedded Raft consensus with automatic leader election, failover and topic reconciliation on restart. Intelligent load manager monitors broker health and rebalances topics to prevent hotspots. Scale horizontally with zero downtime. Learn more →
Cloud-Native Storage
Local WAL for fast writes with background export to S3, GCS, or Azure Blob. Tiered reads serve from cache when possible, falling back to durable segments. Topics move between brokers without data loss. Learn more →
Schema Registry
Built-in schema management with JSON Schema, Avro, and Protobuf. Version control with backward, forward, and full compatibility enforcement, no separate registry service to deploy. Learn more →
AI-Native Admin
Manage your cluster with natural language via the Model Context Protocol. 58 tools and 4 guided workflows covering health checks, schema evolution, security setup, and rebalancing through Claude Code, Antigravity, Cursor, or any MCP-compatible assistant. Learn more →
Rust · crates.io · examples | Go · pkg.go.dev · examples | Java · Maven Central · examples | Python · PyPI · examples