Skip to main content
The direct JAR download is not yet available — the Docker image is the supported channel today; the JAR download arrives in a future release (it will be announced in the release notes). This page documents the JAR run mode ahead of that, and its multi-instance semantics apply to Docker deployments too.
Alginte also ships as a single fat JAR — the backend and the web UI in one file. It requires a Java 25 runtime.
Then open http://localhost:8888.

The bind-address boundary

By default server.address=localhost, so a plain java -jar serves only the local machine. Overriding the bind address is the moment you take ownership of the security boundary — anyone who can reach the port has full control of every connected Kafka cluster unless you enable the login.
To serve a trusted network, override the bind and put a reverse proxy (TLS termination, network allow-listing) in front:
Or via the environment:

Running multiple instances

Each Alginte instance is fully self-contained: its deployed streams live in its own memory, so instances are unaware of each other. Run as many as you like against the same cluster — each UI manages exactly what that instance runs, and you coordinate by deploying to each instance yourself. Deploying the same topology (same application.id) on several instances scales it the standard Kafka Streams way: the instances join one consumer group and split the partitions between them.
Recovery doesn’t need a standby instance. Stream processing state and progress live on the Kafka cluster itself (changelog topics, committed offsets) — deployments are ephemeral, so a restarted instance comes up with no deployed streams: re-import and re-deploy your topologies (export them while designing — that’s your durable copy) and processing resumes exactly where it left off.

Configuration

Everything configurable via application.properties can be set on the command line (--property=value) or through environment variables (Spring relaxed binding). See Configuration for the properties that matter, and mount an external file with --spring.config.additional-location= if you prefer a file over flags.