emqx README

The project's README from github.com/emqx/emqx. As one markdown file: README.md.

EMQX

GitHub Release Build Status Slack Discord X YouTube

EMQX is the world's most scalable and reliable MQTT platform, designed for high-performance, reliable, and secure IoT data infrastructure. It supports MQTT 5.0, 3.1.1, and 3.1, as well as other protocols like MQTT-SN, CoAP, LwM2M, and MQTT over QUIC. EMQX enables you to connect millions of IoT devices, process and route messages in real time, and integrate with a wide range of backend data systems. It's ideal for applications in AI, IoT, Industrial IoT (IIoT), connected vehicles, smart cities, and beyond.

Starting from v5.9.0, EMQX has unified all features from the previous Open Source and Enterprise editions into a single, powerful offering with the Business Source License (BSL) 1.1.

If you want to understand why we made the change, please read this blog post.

Please go to the License section for more details about BSL 1.1.

Key Features

EMQX delivers a powerful set of capabilities for modern connected systems:

Comprehensive Protocol Support

Massive Scalability & High Availability

Powerful Rule Engine & Data Integration

Message Queue

Flow Designer

Smart Data Hub

AI Processing & Integration:

Robust Security

Advanced Observability & Management:

Extensibility

Unified Experience:

Quick Start

Try EMQX Cloud

The simplest way to set up EMQX is to create a managed deployment with EMQX Cloud. You can try EMQX Cloud for free.

For comprehensive guidance, see the EMQX Cloud Documentation.

Run a single node using Docker

docker run -d --name emqx \
  -p 1883:1883 -p 8083:8083 -p 8084:8084 \
  -p 8883:8883 -p 18083:18083 \
  emqx/emqx-enterprise:latest

Next, please follow the Install EMQX Using Docker guide for further instructions.

Run EMQX cluster on Kubernetes

Please refer to the official EMQX Operator documentation for details.

Download EMQX

If you prefer to install and manage EMQX yourself, you can download the latest version from the official site.

For more installation options, see the EMQX installation documentation

Documentation

Contributing

Please see our contributing guide.

For more organised improvement proposals, you can send pull requests to EIP.

Community

Resources

Build From Source

The default branch master tracks the latest development. Stable releases are tracked by release-XY branches, such as release-62 for version 6.2.N.

Build and run a release locally:

git clone https://github.com/emqx/emqx.git
cd emqx
make
_build/emqx-enterprise/rel/emqx/bin/emqx console

Build packages in _packages dir:

Version Schemes

EMQX versions follow the Major.Minor.Patch scheme (e.g. 6.1.2).

GA Releases

General Availability releases, listed on the official download catalog page.

Rolling upgrade between adjacent minor versions is supported — see the upgrade path matrix below.

Non-GA Releases

Non-GA builds are published as tarballs, packages, and Docker images available for download, but are not listed on the official download catalog page.

Rolling Upgrade Paths Since 5.0

Below are the matrices of supported rolling upgrade paths since 5.0. Tables are split for readability; the late-v5 versions (5.8 – 5.10) appear in both.

See release notes for detailed information.

Within v5 (5.0 – 5.10)

From\To 5.1 5.2 5.3 5.4 5.5 5.6 5.7 5.8 5.9 5.10
5.0 ✅ ✅ ✅ ✅ ✅ ✅ ✅ ✅ ⚠️[1] ❌[2]
5.1 ✅ ✅ ✅ ✅ ✅ ✅ ✅ ✅ ✅ ❌[2]
5.2 ✅ ✅ ✅ ✅ ✅ ✅ ✅ ✅ ❌[2]
5.3 ✅ ✅ ✅ ✅ ✅ ✅ ✅ ❌[2]
5.4 ✅ ✅ ⚠️ ✅ ✅ ✅ ✅
5.5 ✅ ⚠️ ✅ ✅ ✅ ✅
5.6 ✅ ✅ ✅ ✅ ✅
5.7 ✅ ✅ ✅ ✅
5.8 ✅ ⚠️[3] ⚠️[3]
5.9 ✅ ✅
5.10 ✅

Into v6 and v7 (5.8 – 7.0?)

There is no 6.4 release. The 6.x line ends at 6.3, and 7.0 follows it.

From\To 5.8 5.9 5.10 6.0 6.1 6.2 6.3 7.0?
5.8 ✅ ⚠️[3] ⚠️[3] ⚠️[4] ⚠️[4] ⚠️[4] ⚠️[4] 🔄
5.9 ✅ ✅ ⚠️[4] ⚠️[4] ⚠️[4] ⚠️[4] 🔄
5.10 ✅ ⚠️[4] ⚠️[4] ⚠️[4] ⚠️[4] 🔄
6.0 ✅ ✅ ✅ ✅ 🔄
6.1 ✅ ✅ ✅ 🔄
6.2 ✅ ✅ 🔄
6.3 ✅ 🔄
7.0? ✅

License

Important License Update

Effective from version 5.9.0, EMQX has transitioned from Apache 2.0 to the Business Source License (BSL) 1.1.

License Requirement for Clustering (v5.9.0+)

Starting with EMQX v5.9.0, due to the license change and the unification of all features, deploying an EMQX cluster (more than 1 node) requires a license file to be loaded.

Please refer to the following resources for details on license acquisition, application, and the specifics of the BSL 1.1.

emqx (emqx/emqx)

Searching Database…

16.8K ·GitHub
What is this?EMQX is an MQTT broker and messaging platform for IoT: it connects millions of devices, routes messages in real time, and bridges them into backend data systems. Aimed at AI, IoT, IIoT, connected vehicles and smart cities.
Is this a managed cloud service or something I run myself?Both. You can self-host it — a single node via Docker or a cluster on Kubernetes through the EMQX Operator — or use the managed EMQX Cloud, which has a free tier to try.
How do I get it running?Easiest: create a free EMQX Cloud deployment. Self-hosting: run a single node with Docker (official guide), deploy on Kubernetes with the EMQX Operator, or download packages from emqx.com.
Is it actually free, or is there a license catch?Since v5.9.0 EMQX ships under BSL 1.1 instead of Apache 2.0, with all features unified. The catch: a cluster of more than one node now requires loading a license file — single nodes are fine.
What is the Flow Designer?A drag-and-drop canvas for building real-time data pipelines without code — you wire together nodes for rules, integrations and AI tasks.
Can messages survive an offline subscriber?Yes. EMQX adds durable message queuing on top of MQTT: configurable lifecycle, TTL and size limits keep messages until consumption, with load-balanced consumption and optional last-value semantics.
What monitoring does it ship with?Prometheus, Grafana, Datadog and OpenTelemetry out of the box, plus a built-in management dashboard, detailed logging and tracing, and a rich HTTP API for automation.
What changed for users in version 5.9.0?The separate Open Source and Enterprise editions were merged into a single offering under BSL 1.1 — every feature, including former enterprise-only ones, is now available to all developers.
Creator
emqx
Size
142.9 MB
Stars
16.8K
Age
13y
Commits · 90 Days