XMQ
Credits:The XMQ web site is provided by Linotex.The XMQ and SPTK Windows installers are created with Advanced Installer free Open-Source license.
There were 0 unique visitors to this page

Download the XMQ MQTT server

The free XMQ MQTT server is distributed as binary packages for Linux (.deb and .rpm), FreeBSD (pkg) and Windows, and as a Docker image. Pick the XMQ version and the operating system; each release also lists the SPTK class library it was built with, in source code and binary packages.

There is no XMQ package for this selection.

Run it in Docker

The same release is published as a Docker image, alexeyparshin/xmq. The image installs the .deb from this page rather than building from source, so a container holds exactly the binaries listed above. Tags are the version number and latest; the image is amd64, 36 MB to download.

docker run --rm -p 1883:1883 alexeyparshin/xmq

The broker takes clients with no credentials out of the box, so nothing has to be configured before the first publish:

mosquitto_pub -h localhost -t test/hello -m 'first message'

That default suits trying the broker out and nothing else. Add -e XMQ_ALLOW_ANONYMOUS=false before the container is reachable from a network you do not control, and create accounts in the configuration interface on https://localhost:18883 — published with -p 18883:18883, first sign-in admin / admin, to be changed at once. MQTT over TLS is on 8883, with a self-signed certificate the container generates on first start.

The configuration, the accounts and the certificate live in /etc/xmq. Mount it, or every restart is a fresh install:

docker run -d -p 1883:1883 -p 8883:8883 -p 18883:18883 -v xmq-config:/etc/xmq --ulimit nofile=1048576:1048576 alexeyparshin/xmq

The descriptor limit belongs there too: Docker gives a container 1024 open files, which caps the broker at about a thousand connections. Sessions, queued messages and retained messages are kept in Redis when XMQ_PERSISTENCE=true is set; the image page carries a compose file that starts the broker and Redis together, along with the full list of settings.