A self-contained Docker Compose setup that runs the Kafkorama real-time messaging server, the Kafkorama Portal (admin UI), and a suite of live-data demo applications.
Find the complete source code and configuration in the kafkorama-deployment repository on GitHub.
docker/
├── docker-compose.yaml # Service definitions for the full stack
├── README.md # This file
├── data/
│ └── db/ # Persistent SQLite database volume (portal)
├── kafkorama-gateway/
│ └── kafkorama-gateway.conf # Kafkorama gateway configuration
└── kafkorama-portal/
└── kafkorama-portal.conf # Kafkorama Portal configuration
kafkorama-gatewayThe Kafkorama real-time push server (kafkorama/kafkorama-gateway:6.0.26). Handles WebSocket/HTTP connections from clients and pushes live updates to subscribers.
| Setting | Value |
|---|---|
| Exposed port | 8800 |
| Protocol | TCP (WebSocket / HTTP) |
| Memory allocation | 128 MB |
| Entitlement mode | Portal |
| REST API | Enabled |
| Stats log interval | 5 s |
Configuration file: kafkorama-gateway/kafkorama-gateway.conf
kafkorama-portalWeb-based administration portal (kafkorama/kafkorama-portal:1.0.5). Manages cluster configuration, client token revocation, and provides the demo dashboard.
| Setting | Value |
|---|---|
| Exposed port | 8080 |
| Memory allocation | 512 MB |
| Database | SQLite (persisted under data/db/) |
| Default admin email | admin@admin.com |
| Default admin password | password |
| Auth signature | HMAC |
| TLS | Disabled (demo mode) |
Configuration file: kafkorama-portal/kafkorama-portal.conf
Six demo services continuously publish live data to the Kafkorama gateway, providing ready-made subjects for demonstration purposes.
Verify your installation:
docker --version
docker compose version
git clone git@github.com:kafkorama/kafkorama-deployment.git
cd kafkorama-deployment/docker
Before starting, inspect and adjust configuration as needed:
# Kafkorama gateway
cat kafkorama-gateway/kafkorama-gateway.conf
# Portal
cat kafkorama-portal/kafkorama-portal.conf
To run in detached (background) mode:
docker compose pull
docker compose up -d
Stop and remove containers:
docker compose down
Once the stack is running, open your browser and navigate to:
http://127.0.0.1:8080
Log in with the default credentials:
| Field | Value |
|---|---|
admin@admin.com |
|
| Password | password |
The portal dashboard displays live charts for all six demo data streams.
# List all running containers
docker compose ps
# Tail logs from the server
docker compose logs -f kafkorama-gateway
# Tail logs from the portal
docker compose logs -f kafkorama-portal
All services communicate on an internal Docker bridge network (local-network). Only the following ports are published to the host:
| Port | Service |
|---|---|
8080 |
Kafkorama Portal (admin UI) |
8800 |
Kafkorama Gateway (client connections) |