本站面向开发者与科研用户,提供开源镜像的搜索和下载加速服务。
所有镜像均来源于原始开源仓库,本站不存储、不修改、不传播任何镜像内容。

emqx-enterprise Docker 镜像下载 - 轩辕镜像

emqx-enterprise 镜像详细信息和使用指南

emqx-enterprise 镜像标签列表和版本信息

emqx-enterprise 镜像拉取命令和加速下载

emqx-enterprise 镜像使用说明和配置指南

Docker 镜像加速服务 - 轩辕镜像平台

国内开发者首选的 Docker 镜像加速平台

极速拉取 Docker 镜像服务

相关 Docker 镜像推荐

热门 Docker 镜像下载

emqx-enterprise
emqx/emqx-enterprise

emqx-enterprise 镜像详细信息

emqx-enterprise 镜像标签列表

emqx-enterprise 镜像使用说明

emqx-enterprise 镜像拉取命令

Docker 镜像加速服务

轩辕镜像平台优势

镜像下载指南

相关 Docker 镜像推荐

EMQX Enterprise的***Docker镜像,这是一个高性能、可扩展的企业级MQTT平台,支持连接数百万IoT设备并实时处理消息,适用于AI、IoT和工业物联网等场景。
4 收藏0 次下载activeemqx镜像

emqx-enterprise 镜像详细说明

emqx-enterprise 使用指南

emqx-enterprise 配置说明

emqx-enterprise 官方文档

EMQX Enterprise 概述

***Docker镜像 网站 | 文档 | GitHub | Slack | ***

支持的架构:amd64arm64v8

概述

EMQX 是世界上最具可扩展性和可靠性的 MQTT 平台,专为高性能、可靠和安全的 IoT 数据基础设施设计。它支持 MQTT 5.0、3.1.1 和 3.1,以及 MQTT-SN、CoAP、LwM2M、MQTT over QUIC 等其他协议。EMQX 能够连接数百万 IoT 设备,实时处理和路由消息,并与各类后端数据系统集成。它适用于 AI、IoT、工业物联网(IIoT)、联网车辆、智慧城市等领域的应用。

统一功能与新许可证(v5.9.0+)

从 5.9.0 版本开始,EMQX 统一了功能并采用商业源代码许可证(BSL)1.1。这意味着所有功能(包括强大的数据集成、流设计器、高级可观测性和企业级安全性)现在都在单个 Docker 镜像中可用。

了解更多许可证变更:

  • 新闻:EMQX 采用 BSL
  • 博客:我们为何采用 BSL
  • 许可证常见问题

重要提示:集群需要许可证密钥(v5.9.0+)!

在 BSL 1.1 许可下,部署 EMQX 集群(超过 1 个节点)需加载许可证密钥,即使是 BSL 允许的免费/开发用例也不例外。有关获取和应用许可证的详细信息,请参阅许可证常见问题和许可证文档。

核心功能

EMQX 为现代连接系统提供以下关键能力:

全面的协议支持

  • 完整支持 MQTT v5.0、v3.1.1 和 v3.1。
  • MQTT over QUIC:利用 QUIC 协议优势,实现更快的连接建立、减少队头阻塞和无缝连接迁移。
  • 通过 网关 支持 LwM2M、CoAP、MQTT-SN 等其他 IoT 协议。

大规模可扩展性与高可用性

  • 连接 1 亿+并发 MQTT 客户端(单集群)。
  • 处理 每秒数百万条消息,延迟亚毫秒级。
  • 无主集群 架构,确保高可用性和容错能力。
  • 通过 EMQX 集群链接 实现无缝全局通信。

强大的规则引擎与数据集成

  • 基于 SQL 的 规则引擎,用于实时处理、转换、丰富和过滤流转数据。
  • 与 50+ 云服务和企业系统无缝数据桥接及 集成,包括:
    • 消息队列:Kafka、RabbitMQ、Pulsar、RocketMQ 等。
    • 数据库:PostgreSQL、MySQL、MongoDB、Redis、ClickHouse、InfluxDB 等。
    • 云服务:AWS Kinesis、GCP Pub/Sub、Azure Event Hub、Confluent Cloud 等。
  • Webhook 支持,便于与自定义服务集成。

流设计器

  • 拖放式画布,无需代码即可编排实时数据管道,支持规则、集成和 AI 任务节点。

智能数据中心

  • 模式注册表:定义、存储和管理数据模式,确保一致性。
  • 模式验证:根据注册模式验证传入数据,维护数据完整性。
  • 消息转换:在不同格式和结构间转换数据,促进无缝集成。

AI 处理与集成

  • 原生 IoT 数据流 AI 处理能力。
  • 与主流 AI 服务集成。
  • 支持边缘或云端的 AI 驱动决策。

强健的安全性

  • 通过 TLS/SSL 和 WSS 实现 安全连接。
  • 灵活的 认证 机制:用户名/密码、JWT、PSK、X.509 证书等。
  • 基于 ACL 的细粒度访问控制。
  • 与外部认证数据库集成(LDAP、SQL、Redis)。

高级可观测性与管理

  • 与 Prometheus、Grafana、Datadog 和 OpenTelemetry 集成的全面监控。
  • 详细的日志和 追踪 功能。
  • 用户友好的 仪表板,用于集群概览和管理。
  • 丰富的 HTTP API,支持自动化和第三方集成。

可扩展性

  • 插件 架构,用于扩展功能。
  • 钩子,用于在消息生命周期各节点自定义行为。

统一体验

  • 基于 BSL 1.1 许可证(v5.9.0+),所有功能(含原企业版专属功能)对开发者开放。

快速启动

运行单个 EMQX 节点:

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

EMQX 代理在 Docker 容器中以 Linux 用户 emqx 运行。

配置

etc/emqx.conf 中的所有 EMQX 配置可通过环境变量设置。默认情况下,前缀为 EMQX_ 的环境变量会映射到配置文件中的键值对。

示例:

bash
# EMQX_LISTENERS__TCP__DEFAULT__BIND <-> listeners.tcp.default.bind
# EMQX_LISTENERS__SSL__DEFAULT__ACCEPTORS <-> listeners.ssl.default.acceptors
# EMQX_ZONES__DEFAULT__MQTT__MAX_PACKET_SIZE <--> zones.default.mqtt.max_packet_size

# 规则:移除前缀 EMQX_,大写字母转小写,下划线替换为点

# 示例:将 MQTT TCP 端口设置为 1884
docker run -d --name emqx \
    -e EMQX_LISTENERS__TCP__DEFAULT__BIND=1884 \
    -p ***:*** \
    -p 1884:1884 \
    emqx/emqx-enterprise:latest

更多配置详情见 ***文档。

集群

注意: 部署 EMQX 集群(超过 1 个节点)需加载许可证密钥。

EMQX 支持多种集群方式,详情见 文档。

通过 docker compose 创建静态节点列表集群:

  • 创建 docker-compose.yaml
yaml
services:
  emqx1:
    image: emqx/emqx-enterprise:latest
    ports:
      - "***:***"
    environment:
      - "EMQX_NODE__NAME=***"
      - "EMQX_CLUSTER__DISCOVERY_STRATEGY=static"
      - "EMQX_CLUSTER__STATIC__SEEDS=[***, ***]"
      - "EMQX_LICENSE__KEY=<您的许可证密钥>"
    networks:
      emqx-bridge:
        aliases:
          - node1.emq***

  emqx2:
    image: emqx/emqx-enterprise:latest
    environment:
      - "EMQX_NODE__NAME=***"
      - "EMQX_CLUSTER__DISCOVERY_STRATEGY=static"
      - "EMQX_CLUSTER__STATIC__SEEDS=[***, ***]"
      - "EMQX_LICENSE__KEY=<您的许可证密钥>"
    networks:
      emqx-bridge:
        aliases:
          - node2.emq***

networks:
  emqx-bridge:
    driver: bridge
  • 启动集群:
bash
docker compose -p my_emqx up -d
  • 查看集群状态:
bash
$ docker exec -it my_emqx_emqx1_1 sh -c "emqx ctl cluster status"
Cluster status: #[running_nodes => ['***','***'],
                  stopped_nodes => []}

持久化

需持久化的目录:

  • /opt/emqx/data
  • /opt/emqx/log

EMQX 使用 data/mnesia/<node_name> 存储数据,建议使用稳定标识符(如主机名或 FQDN)作为节点名称,避免因名称变更导致数据丢失。

docker compose 配置示例:

yaml
volumes:
  vol-emqx-data:
    name: foo-emqx-data
  vol-emqx-log:
    name: foo-emqx-log

services:
  emqx:
    image: emqx/emqx-enterprise:latest
    hostname: node.emq***
    restart: always
    environment:
      EMQX_NODE__NAME: "***"
    volumes:
      - vol-emqx-data:/opt/emqx/data
      - vol-emqx-log:/opt/emqx/log

内核调优

Linux 主机调优建议参考 调优指南。若通过 Docker 调优,需确保 Docker 版本 ≥1.12:

bash
docker run -d --name emqx -p ***:*** -p 1883:1883 \
  --sysctl fs.file-max=2097152 \
  --sysctl fs.nr_open=2097152 \
  --sysctl net.core.somaxconn=32768 \
  --sysctl net.ipv4.tcp_max_syn_backlog=*** \
  --sysctl net.core.netdev_max_backlog=*** \
  --sysctl net.ipv4.ip_local_port_range="1000 65535" \
  --sysctl net.core.rmem_default=262144 \
  --sysctl net.core.wmem_default=262144 \
  --sysctl net.core.rmem_max=*** \
  --sysctl net.core.wmem_max=*** \
  --sysctl net.core.optmem_max=*** \
  --sysctl net.ipv4.tcp_rmem="1024 4096 ***" \
  --sysctl net.ipv4.tcp_wmem="1024 4096 ***" \
  --sysctl net.ipv4.tcp_max_tw_buckets=*** \
  --sysctl net.ipv4.tcp_fin_timeout=15 \
  emqx/emqx-enterprise:latest

注意:不要以特权模式运行 EMQX Docker 容器,也不要挂载系统 proc 到容器中进行内核调优,这存在安全风险。

致谢

  • @je-al
  • @RaymondMouthaan
  • @zhongjiewu

用户好评

来自真实用户的反馈,见证轩辕镜像的优质服务

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

"Docker加速体验非常流畅,大镜像也能快速完成下载。"