Why Install Locally?
Running Coreflux on your own machine gives you a complete IoT data pipeline—MQTT broker, LoT runtime, and data routing—without external dependencies or cloud subscriptions.
Coreflux runs as a single binary or container. No databases, no message queues, no orchestration needed—just download and run.
Install Coreflux
Docker
DigitalOcean
Windows
Linux
Raspberry Pi
Docker is the fastest way to get Coreflux running. The official image works on Linux, macOS, and Windows. docker run -d \
--name coreflux_broker \
-p 1883:1883 \
-p 5000:5000 \
coreflux/coreflux-mqtt-broker:latest
Port Protocol Description 1883TCP MQTT (unencrypted) 5000WebSocket WebSocket connections
TLS/SSL Ports (when using certificates)
If you configure TLS certificates, expose these additional ports: docker run -d \
--name coreflux_broker \
-p 1883:1883 \
-p 5000:5000 \
-p 8883:8883 \
-p 443:443 \
coreflux/coreflux-mqtt-broker:latest
Port Protocol Description 8883TCP/TLS MQTT over TLS 443WSS WebSocket over TLS
See Broker Configuration for TLS setup. Deploy Coreflux in seconds with our 1-Click Droplet on DigitalOcean Marketplace. This is the fastest way to get a production-ready broker running in the cloud.
Choose Your Droplet Size
Select a plan based on your needs: Plan RAM vCPUs Best For Basic 1 GB 1 Development, testing Basic 2 GB 1 Small deployments Basic 4 GB 2 Recommended ✓
We recommend the 4 GB / 2 vCPU droplet for most use cases. It provides headroom for LoT Actions, multiple routes, and moderate message throughput.
Select Region
Choose a datacenter close to your devices for lower latency.
Create Droplet
Click Create Droplet and wait ~60 seconds for deployment.
Connect to Your Broker
Once the droplet is ready, use the public IP address to connect: Setting Value Host <your-droplet-ip>Port 1883Username rootPassword coreflux
Change the default password immediately after first login. SSH into your droplet and update the broker configuration.
The Coreflux droplet exposes the following ports by default: Port Protocol Description 1883TCP MQTT (unencrypted) 8883TCP/TLS MQTT over TLS 5000WebSocket WebSocket connections 443WSS WebSocket over TLS
Configure your DigitalOcean firewall to restrict access as needed.
To manage your Coreflux installation via SSH: ssh root@ < your-droplet-i p >
The Coreflux broker runs as a systemd service. Common commands: # Check status
sudo systemctl status coreflux
# Restart broker
sudo systemctl restart coreflux
# View logs
sudo journalctl -u coreflux -f
Download and install Coreflux, then register it as a Windows service.
Download the Windows zip from coreflux.org/downloads
Extract the zip file to your preferred location (e.g., C:\Coreflux)
Open Command Prompt as Administrator and navigate to the folder
Install as a service:
The service starts automatically and will restart on system boot. To uninstall the service, run CorefluxMQTTBroker -U as Administrator.
Download and run the Coreflux binary on Linux x64 systems. Quick Start (foreground):
Download the Linux zip from coreflux.org/downloads
Extract and run (replace <downloaded-file> with your actual filename):
unzip < downloaded-fil e > .zip -d coreflux
cd coreflux
chmod +x CorefluxMQTTBroker
./CorefluxMQTTBroker
Production Setup (systemd service):
Create a service file:
sudo nano /etc/systemd/system/coreflux.service
Add this configuration (adjust paths as needed):
[Unit]
Description =Coreflux MQTT Broker
After =network.target
[Service]
Type =simple
User =root
WorkingDirectory =/opt/coreflux
ExecStart =/opt/coreflux/CorefluxMQTTBroker
Restart =always
RestartSec =5
[Install]
WantedBy =multi-user.target
Enable and start the service:
sudo systemctl daemon-reload
sudo systemctl enable coreflux
sudo systemctl start coreflux
Check the status:
sudo systemctl status coreflux
Download and run the Coreflux binary on Raspberry Pi (64-bit ARM). Quick Start (foreground):
Download the Raspberry Pi zip from coreflux.org/downloads
Extract and run (replace <downloaded-file> with your actual filename):
unzip < downloaded-fil e > .zip -d coreflux
cd coreflux
chmod +x CorefluxMQTTBroker
./CorefluxMQTTBroker
Production Setup (systemd service):
Create a service file:
sudo nano /etc/systemd/system/coreflux.service
Add this configuration:
[Unit]
Description =Coreflux MQTT Broker
After =network.target
[Service]
Type =simple
User =root
WorkingDirectory =/home/pi/coreflux
ExecStart =/home/pi/coreflux/CorefluxMQTTBroker
Restart =always
RestartSec =5
[Install]
WantedBy =multi-user.target
Enable and start the service:
sudo systemctl daemon-reload
sudo systemctl enable coreflux
sudo systemctl start coreflux
Check the status:
sudo systemctl status coreflux
Verify Installation
Confirm the broker is running by connecting with an MQTT client and subscribing to a system topic.
Connect to the Broker
Create a new connection with these settings: Setting Value Host localhostPort 1883Username rootPassword coreflux
Check System Topics
Subscribe to $SYS/# to see broker status messages. If you see topics like $SYS/broker/version, the broker is running correctly. You should see the Coreflux version number published to $SYS/broker/version.
The broker ships with default credentials for initial setup: Setting Value Username rootPassword coreflux
Change the default password before deploying to production. See Broker Configuration for security settings.
Next Steps