专属域名
文档搜索
轩辕助手
Run助手
邀请有礼
返回顶部
快速返回页面顶部
收起
收起工具栏
轩辕镜像 官方专业版
轩辕镜像 官方专业版轩辕镜像 官方专业版官方专业版
首页个人中心搜索镜像

交易
充值流量我的订单
工具
提交工单镜像收录一键安装
Npm 源Pip 源Homebrew 源
帮助
常见问题
其他
关于我们网站地图

官方QQ群: 13763429

templum/rabbitmq-connector Docker 镜像 - 轩辕镜像

rabbitmq-connector
templum/rabbitmq-connector
自动构建
该连接器使开发者能从Rabbit MQ触发OpenFaaS函数。
2 收藏0 次下载activetemplum镜像
🚀专业版镜像服务,面向生产环境设计
中文简介版本下载
🚀专业版镜像服务,面向生产环境设计

OpenFaaS RabbitMQ Connector 中文技术文档

镜像概述和主要用途

OpenFaaS RabbitMQ Connector 是一个非官方的 OpenFaaS 触发器,基于 RabbitMQ 消息触发 OpenFaaS 函数。它通过 RabbitMQ 的 Routing keys 调用监听特定 topic 的 OpenFaaS 函数,实现从 RabbitMQ 消息到 OpenFaaS 函数的事件驱动触发。

核心功能和特性

  • 基于 RabbitMQ 消息触发:通过 RabbitMQ 的 Routing keys 匹配函数监听的 topic,触发 OpenFaaS 函数执行
  • 多主题支持:函数可通过注解指定多个监听主题(逗号分隔),如 log,monitoring,billing
  • 错误处理机制:函数调用失败时,消息会尝试返回队列,需确保函数支持重复调用(幂等性)
  • 即发即弃流程:仅支持“fire & forget”模式,函数返回结果会被忽略
  • TLS 支持:可配置 TLS 连接 RabbitMQ,保障通信安全
  • 灵活配置:支持主题映射刷新时间、请求超时、最大连接数等参数自定义

使用场景和适用范围

适用于需要通过 RabbitMQ 消息异步触发 OpenFaaS 函数的场景,例如:

  • 日志处理:监听日志主题,触发函数进行日志分析或存储
  • 监控告警:接收监控指标消息,触发函数生成告警通知
  • 账单处理:消费账单事件消息,触发函数计算或生成账单
  • 微服务事件驱动:作为微服务间事件通信的桥梁,通过 RabbitMQ 消息触发下游函数

使用方法

部署 OpenFaaS 函数

需通过 OpenFaaS CLI 或 REST API 部署函数,并添加 topic 注解,指定函数监听的主题(逗号分隔)。

示例:使用 OpenFaaS CLI 部署函数
  1. 编写函数配置文件 stack.yml,添加 annotations 字段:

    yaml
    version: 1.0
    provider:
      name: openfaas
      gateway: [***]
    functions:
      log-processor:
        image: your-registry/log-processor:latest
        annotations:
          topic: "log,monitoring"  # 监听 log 和 monitoring 主题
    
  2. 部署函数:

    bash
    faas-cli deploy -f stack.yml
    
注意事项
  • 幂等性要求:消息失败时会返回队列,函数需支持重复调用(避免重复处理同一消息)。
  • 消息可靠性:建议参考 RabbitMQ 生产环境检查清单 和 监控指南,避免消息丢失。
  • 结果忽略:函数返回结果不会被处理,仅关注调用是否成功。

配置说明

通用连接器配置
参数名说明默认值可选值
basic_auth是否启用 basic_auth 认证(OpenFaaS 网关)-1/true(启用)、0/false(禁用)
secret_mount_path存储 basic_auth 密钥的文件路径-密钥文件绝对路径
OPEN_FAAS_GW_URLOpenFaaS 网关 URL[***]网关地址(如 [***])
REQ_TIMEOUT函数调用请求超时时间30s时间字符串(如 10s、2m)
TOPIC_MAP_REFRESH_TIME主题映射刷新时间(刷新函数与主题的关联关系)60s时间字符串(如 30s、5m)
INSECURE_SKIP_VERIFY是否跳过 OpenFaaS 网关 HTTPS 证书验证(不推荐生产环境启用)falsetrue/false
MAX_CLIENT_PER_HOST单个函数主机的最大连接数256正整数
TLS 配置(RabbitMQ 连接)
参数名说明默认值可选值
TLS_ENABLED是否启用 TLS 连接 RabbitMQfalsetrue/false
TLS_CA_CERT_PATHCA 证书文件路径(需确保进程有权限访问)-证书文件绝对路径
TLS_SERVER_CERT_PATH客户端证书文件路径(需确保进程有权限访问)-证书文件绝对路径
TLS_SERVER_KEY_PATH客户端密钥文件路径(需确保进程有权限访问)-密钥文件绝对路径

注意:启用 TLS 时,RMQ_HOST 需与证书中的通用名称(Common Name)一致,否则连接会失败。

RabbitMQ 相关配置
参数名说明默认值可选值
RMQ_HOSTRabbitMQ 主机名或 IP-字符串(如 rabbitmq:5672)
RMQ_PORTRabbitMQ 端口号-整数(如 5672 或 TLS 端口 5671)
RMQ_VHOSTRabbitMQ 虚拟主机(vhost)/字符串
RMQ_USERRabbitMQ 用户名(与 RMQ_PASS 同时为空时不使用认证)""字符串
RMQ_PASSRabbitMQ 密码(与 RMQ_USER 同时为空时不使用认证)""字符串
PATH_TO_TOPOLOGYRabbitMQ 交换器(Exchange)拓扑配置文件路径(必填)-YAML 文件绝对路径
拓扑配置(Exchange 定义)

需通过 YAML 文件定义 RabbitMQ 交换器(Exchange)配置,路径由 PATH_TO_TOPOLOGY 指定。配置格式如下:

yaml
# 交换器配置列表
- name: Exchange_Name  # 交换器名称(必填)
  topics: [Foo, Bar]   # 交换器关联的主题列表(必填)
  declare: true        # 是否声明交换器(若已存在,会验证配置是否匹配),默认:false
  type: "direct"       # 交换器类型(必填,仅支持 direct 或 topic)
  durable: false       # 交换器是否持久化(RabbitMQ 重启后保留),默认:false
  auto-deleted: false  # 所有消费者断开后是否自动删除交换器,默认:false
队列自动配置规则
  • 队列名称:自动生成,格式为 OpenFaaS_{Exchange_Name}_{Topic}(如交换器 logs 的主题 error,队列名为 OpenFaaS_logs_error)。
  • 持久化与自动删除:队列的 durable 和 auto-deleted 属性与所属交换器保持一致。

Docker 部署示例

docker run 命令
bash
docker run -d \
  --name rabbitmq-connector \
  -e RMQ_HOST=rabbitmq \
  -e RMQ_PORT=5672 \
  -e RMQ_USER=guest \
  -e RMQ_PASS=guest \
  -e OPEN_FAAS_GW_URL=[***] \
  -e PATH_TO_TOPOLOGY=/topology/topology.yaml \
  -e TOPIC_MAP_REFRESH_TIME=30s \
  -e REQ_TIMEOUT=15s \
  -v /path/to/your/topology.yaml:/topology/topology.yaml \
  -v /path/to/basic-auth-secret:/secret/basic-auth \  # 若启用 basic_auth
  templum/rabbitmq-connector:latest
拓扑配置文件示例(topology.yaml)
yaml
- name: logs-exchange
  topics: [error, info, warn]
  declare: true
  type: "topic"
  durable: true
  auto-deleted: false
- name: billing-exchange
  topics: [invoice, payment]
  declare: false
  type: "direct"
  durable: false

问题反馈与功能请求

如有 Bug 报告或功能需求,请通过 GitHub Issues 提交。

查看更多 rabbitmq-connector 相关镜像 →
rabbitmq logo
rabbitmq
by library
官方
RabbitMQ是一款开源的多协议消息代理,主要用于在分布式系统中实现应用间的异步通信,支持AMQP、MQTT、STOMP等多种消息协议,能够有效解耦服务、提升系统可靠性与可扩展性,适用于微服务架构、实时数据处理及异步任务处理等场景,由Erlang语言开发,具备高并发、高可用特性,广泛应用于企业级系统。
53301B+ pulls
上次更新:6 天前
bitnami/rabbitmq logo
bitnami/rabbitmq
by VMware
认证
Bitnami Secure Image for rabbitmq是比特纳米公司推出的针对RabbitMQ消息代理的安全镜像,该镜像经专业安全加固,预装必要依赖与优化配置,可保障消息传输的机密性与完整性,支持快速部署至云平台、容器环境或本地服务器,能有效简化开发与运维流程,同时满足企业级安全合规需求,为分布式系统中的消息通信提供稳定可靠的安全运行环境。
130500M+ pulls
上次更新:4 个月前
bitnamicharts/rabbitmq logo
bitnamicharts/rabbitmq
by VMware
认证
Bitnami的RabbitMQ Helm chart,用于在Kubernetes环境中便捷、可靠地部署和管理RabbitMQ消息队列。
310M+ pulls
上次更新:4 个月前
airbyte/connector-builder-server logo
airbyte/connector-builder-server
by Airbyte
认证
暂无描述
510M+ pulls
上次更新:1 个月前
airbyte/connector-sidecar logo
airbyte/connector-sidecar
by Airbyte
认证
暂无描述
1M+ pulls
上次更新:5 天前
camunda/connectors-bundle logo
camunda/connectors-bundle
by camunda services GmbH
认证
Camunda开箱即用的连接器套件,用于快速集成外部系统,支持流程自动化中的数据交互与系统对接。
1M+ pulls
上次更新:5 天前

轩辕镜像配置手册

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

登录仓库拉取

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

Linux

在 Linux 系统配置镜像服务

Windows/Mac

在 Docker Desktop 配置镜像

Docker Compose

Docker Compose 项目配置

K8s Containerd

Kubernetes 集群配置 Containerd

K3s

K3s 轻量级 Kubernetes 镜像加速

Dev Containers

VS Code Dev Containers 配置

MacOS OrbStack

MacOS OrbStack 容器配置

宝塔面板

在宝塔面板一键配置镜像

群晖

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访问体验非常流畅,大镜像也能快速完成下载。"

轩辕镜像
镜像详情
...
templum/rabbitmq-connector
官方博客Docker 镜像使用技巧与技术博客
热门镜像查看热门 Docker 镜像推荐
一键安装一键安装 Docker 并配置镜像源
提交工单
咨询镜像拉取问题请 提交工单,官方技术交流群:13763429
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
咨询镜像拉取问题请提交工单,官方技术交流群:
轩辕镜像面向开发者与科研用户,提供开源镜像的搜索和访问支持。所有镜像均来源于原始仓库,本站不存储、不修改、不传播任何镜像内容。
官方邮箱:点击复制邮箱
©2024-2026 源码跳动
官方邮箱:点击复制邮箱Copyright © 2024-2026 杭州源码跳动科技有限公司. All rights reserved.