专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏

greenbone/mqtt-broker Docker 镜像 - 轩辕镜像

mqtt-broker
greenbone/mqtt-broker
Greenbone社区版专用的mosquitto.org MQTT代理
2 收藏0 次下载activegreenbone镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

Greenbone Community Edition Mosquitto MQTT Broker 镜像文档

1. 镜像概述和主要用途

该镜像是基于 Eclipse Mosquitto 的轻量级 MQTT 消息代理,专为 Greenbone Community Edition 设计。它提供可靠的发布/订阅(Publish/Subscribe)消息传递服务,用于 Greenbone 漏洞扫描系统中各组件(如扫描引擎、管理服务、前端界面等)之间的实时通信,支持事件通知、状态同步和数据传输等核心业务场景。

2. 核心功能和特性

2.1 核心功能
  • 轻量级消息代理:基于 Mosquitto 构建,资源占用低,适合嵌入式和服务器环境。
  • MQTT 协议支持:兼容 MQTT v3.1、v3.1.1 和 v5.0 协议,满足不同设备和组件的通信需求。
  • Greenbone 兼容性:针对 Greenbone Community Edition 组件通信协议优化,确保与 Greenbone 生态无缝集成。
2.2 关键特性
  • 安全通信:支持 TLS/SSL 加密(端口 8883)和基础认证(用户名/密码),保障数据传输安全。
  • 灵活配置:支持通过配置文件自定义代理行为(如端口、日志、持久化策略等)。
  • 持久化存储:支持消息持久化和客户端会话状态保存,避免服务重启导致的数据丢失。
  • 低延迟:优化消息路由机制,确保 Greenbone 组件间实时数据交互的低延迟要求。

3. 使用场景和适用范围

3.1 典型使用场景
  • Greenbone 组件间通信:作为扫描引擎(OpenVAS Scanner)、管理服务(gvmd)、前端(GSA)等组件的消息中枢,传递扫描任务、进度状态、漏洞数据等信息。
  • 事件通知:实时推送系统事件(如扫描任务开始/结束、漏洞发现)至 Greenbone 管理节点。
  • 分布式部署支持:在多节点 Greenbone 部署中,实现跨节点组件的消息同步。
3.2 适用范围
  • Greenbone Community Edition 开发、测试及生产环境部署。
  • 需要轻量级消息中间件的 Greenbone 定制化场景。
  • 对 MQTT 协议兼容的 IoT 或分布式系统集成(基于 Greenbone 扩展场景)。

4. 使用方法和配置说明

4.1 基本使用(Docker Run)
4.1.1 快速启动(无持久化,未加密)
bash
docker run -d \
  --name greenbone-mosquitto \
  -p 1883:1883 \
  greenbone/mosquitto
  • 说明:启动未加密的 MQTT 服务(端口 1883),适合测试环境。
4.1.2 带持久化和日志的启动
bash
docker run -d \
  --name greenbone-mosquitto \
  -p 1883:1883 \
  -v ./mosquitto/data:/mosquitto/data \  # 持久化消息数据
  -v ./mosquitto/log:/mosquitto/log \    # 持久化日志
  greenbone/mosquitto
  • 说明:通过挂载本地目录实现数据和日志持久化,避免容器重启后数据丢失。
4.1.3 启用 TLS 加密(生产环境推荐)
bash
docker run -d \
  --name greenbone-mosquitto \
  -p 8883:8883 \                        # TLS 加密端口
  -v ./mosquitto/config:/mosquitto/config \  # 挂载包含 TLS 配置的目录
  -v ./mosquitto/certs:/mosquitto/certs \    # 挂载 TLS 证书(ca.crt, server.crt, server.key)
  -v ./mosquitto/data:/mosquitto/data \
  -v ./mosquitto/log:/mosquitto/log \
  greenbone/mosquitto
  • 前提:./mosquitto/config/mosquitto.conf 需配置 TLS(示例见 4.3 节)。
4.2 Docker Compose 部署(推荐)

创建 docker-compose.yml:

yaml
version: '3'
services:
  greenbone-mosquitto:
    image: greenbone/mosquitto
    container_name: greenbone-mosquitto
    ports:
      - "1883:1883"   # 未加密端口(可选,仅开发环境)
      - "8883:8883"   # TLS 加密端口(生产环境必选)
    volumes:
      - ./mosquitto/config:/mosquitto/config:ro  # 只读挂载配置目录
      - ./mosquitto/certs:/mosquitto/certs:ro    # 只读挂载证书目录
      - ./mosquitto/data:/mosquitto/data         # 持久化消息数据
      - ./mosquitto/log:/mosquitto/log           # 持久化日志
    restart: unless-stopped                      # 异常退出后自动重启

启动命令:docker-compose up -d

4.3 配置文件说明

Mosquitto 通过配置文件 mosquitto.conf 定义行为,默认路径为容器内 /etc/mosquitto/mosquitto.conf。建议通过挂载自定义配置文件覆盖默认配置。

4.3.1 基础配置示例(mosquitto.conf)
conf
# 基础网络配置
listener 1883 0.0.0.0  # 监听所有网卡的 1883 端口(未加密)
listener 8883 0.0.0.0  # 监听所有网卡的 8883 端口(TLS 加密)

# TLS 配置(生产环境必须)
cafile /mosquitto/certs/ca.crt       # CA 证书路径
certfile /mosquitto/certs/server.crt  # 服务端证书
keyfile /mosquitto/certs/server.key   # 服务端私钥
tls_version tlsv1.2                   # 支持的 TLS 版本

# 持久化配置
persistence true                     # 启用持久化
persistence_location /mosquitto/data/ # 持久化数据路径
log_dest file /mosquitto/log/mosquitto.log  # 日志文件路径
log_type all                         # 记录所有日志类型
log_timestamp true                   # 日志带时间戳
4.4 环境变量配置
环境变量名说明默认值
LOG_LEVEL日志级别(debug/info/warning/error)info
MQTT_USER基础认证用户名(需配合 MQTT_PASSWORD)无(默认关闭认证)
MQTT_PASSWORD基础认证密码(需配合 MQTT_USER)无
示例:启用基础认证
bash
docker run -d \
  --name greenbone-mosquitto \
  -p 1883:1883 \
  -e MQTT_USER=greenbone \
  -e MQTT_PASSWORD=secure_password \
  greenbone/mosquitto

5. 注意事项

  • 安全最佳实践:生产环境必须启用 TLS 加密(端口 8883)并配置认证(用户名/密码或证书认证),避免明文传输和未授权访问。
  • 配置文件权限:挂载自定义配置文件时,确保宿主机文件权限正确(容器内运行用户通常为 mosquitto,UID/GID 为 1883)。
  • Greenbone 版本兼容性:需与 Greenbone Community Edition 其他组件版本匹配,具体参考 Greenbone 官方文档。
  • 性能调优:高并发场景下,可通过配置文件调整 max_inflight_messages、max_queued_messages 等参数优化性能。

6. 参考链接

  • Greenbone Community Container 官方文档
  • Eclipse Mosquitto 官方文档
  • MQTT 协议规范
查看更多 mqtt-broker 相关镜像 →
greenbone/redis-server logo
greenbone/redis-server
by greenbone
为Greenbone社区版提供的Redis服务容器镜像
1500K+ pulls
上次更新:8 天前
greenbone/gsad-build logo
greenbone/gsad-build
by greenbone
该镜像用于构建Greenbone Security Assistant HTTP服务器(gsad),gsad是与Greenbone企业设备通信的服务器,通过连接Greenbone漏洞管理器守护进程(gvmd)提供全功能HTTP接口,支持漏洞管理。
10K+ pulls
上次更新:11 个月前

轩辕镜像配置手册

探索更多轩辕镜像的使用方法,找到最适合您系统的配置方式

登录仓库拉取

通过 Docker 登录认证访问私有仓库

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

宝塔面板

在宝塔面板一键配置镜像

群晖

Synology 群晖 NAS 配置

飞牛

飞牛 fnOS 系统配置镜像

极空间

极空间 NAS 系统配置服务

爱快路由

爱快 iKuai 路由系统配置

绿联

绿联 NAS 系统配置镜像

威联通

QNAP 威联通 NAS 配置

Podman

Podman 容器引擎配置

Singularity/Apptainer

HPC 科学计算容器配置

其他仓库配置

ghcr、Quay、nvcr 等镜像仓库

专属域名拉取

无需登录使用专属域名

需要其他帮助?请查看我们的 常见问题Docker 镜像访问常见问题解答 或 提交工单

镜像拉取常见问题

轩辕镜像免费版与专业版有什么区别?

免费版仅支持 Docker Hub 访问,不承诺可用性和速度;专业版支持更多镜像源,保证可用性和稳定速度,提供优先客服响应。

轩辕镜像支持哪些镜像仓库?

专业版支持 docker.io、gcr.io、ghcr.io、registry.k8s.io、nvcr.io、quay.io、mcr.microsoft.com、docker.elastic.co 等;免费版仅支持 docker.io。

流量耗尽错误提示

当返回 402 Payment Required 错误时,表示流量已耗尽,需要充值流量包以恢复服务。

410 错误问题

通常由 Docker 版本过低导致,需要升级到 20.x 或更高版本以支持 V2 协议。

manifest unknown 错误

先检查 Docker 版本,版本过低则升级;版本正常则验证镜像信息是否正确。

镜像拉取成功后,如何去掉轩辕镜像域名前缀?

使用 docker tag 命令为镜像打上新标签,去掉域名前缀,使镜像名称更简洁。

查看全部问题→

用户好评

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

oldzhang的头像

oldzhang

运维工程师

Linux服务器

5

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

轩辕镜像
镜像详情
...
greenbone/mqtt-broker
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
免费获取在线技术支持请 提交工单,官方QQ群:13763429 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
免费获取在线技术支持请提交工单,官方QQ群: 。
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.
轩辕镜像 官方专业版 Logo
轩辕镜像轩辕镜像官方专业版
首页个人中心搜索镜像
交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429