StreamPulse v2.2 introduces a major capability upgrade by adding a third microservice: an MQTT status publisher designed for IoT dashboards, automation systems, and cloud integrations. This release focuses on reliability, configurability, and fully Dockerized orchestration.
Key Highlights
- New mqtt_service.py running under Supervisor
- Publishes full heartbeat JSON data to MQTT at configurable intervals
- Supports TCP, WebSocket, TLS, and authenticated brokers (Mosquitto, HiveMQ, EMQX, etc.)
- Live reload of MQTT settings from
config.yaml - Updated Web GUI with MQTT configuration panel and toggles
- Clean reconnect logic with exponential backoff
- Graceful shutdown and fault-tolerant operation
- Three-service architecture (monitor + web gui + mqtt publisher)
- Optional
mqtt_test_subscriber.pyfor testing MQTT output
Improvements
- Refactored Dockerfile and Supervisor orchestration
- More stable initialization logic for config and DB
- Improved logging and error visibility for production debugging
- Backward-compatible with v2.1 persistent volume structure
Upgrading From v2.1
- Fully compatible; no breaking changes
- Existing
config.yamlremains valid - MQTT block auto-generated if missing
- Same host volume mapping:
/host/config.yamland/host/streams.db
Docker Images
Docker Hub Repository:
https://hub.docker.com/r/devprincekumar/streampulse
Available tags:
- 2.2 – Latest feature release
- 2.1 – Stable release