feat: 新增 RocketMQ (#1407)

This commit is contained in:
wanghe 2024-05-14 14:18:10 +08:00 committed by GitHub
parent 7faf7e6316
commit 149792aba0
No known key found for this signature in database
GPG Key ID: B5690EEEBB952194
12 changed files with 188 additions and 0 deletions

58
apps/rocketmq/5.2.0/data.yml Executable file
View File

@ -0,0 +1,58 @@
additionalProperties:
formFields:
- default: 9876
edit: true
envKey: PANEL_APP_PORT_NAMESERVER
labelEn: NameServer Port
labelZh: NameServer 端口
required: true
rule: paramPort
type: number
- default: 10911
edit: true
envKey: PANEL_APP_PORT_LISTEN
labelEn: Broker ListenPort
labelZh: Broker 监听端口
required: true
rule: paramPort
type: number
- default: 10909
edit: true
envKey: PANEL_APP_PORT_FASTLISTEN
labelEn: Broker FastListenPort
labelZh: Broker 快速监听端口
required: true
rule: paramPort
type: number
- default: 10912
edit: true
envKey: PANEL_APP_PORT_HALISTEN
labelEn: Broker HaListenPort
labelZh: Broker HA 监听端口
required: true
rule: paramPort
type: number
- default: 8080
edit: true
envKey: PANEL_APP_PORT_REMOTINGLISTEN
labelEn: Proxy RemotingListenPort
labelZh: Proxy 远程监听端口
required: true
rule: paramPort
type: number
- default: 8081
edit: true
envKey: PANEL_APP_PORT_GRPCSERVER
labelEn: Proxy GrpcServerPort
labelZh: Proxy grpc 端口
required: true
rule: paramPort
type: number
- default: 8088
edit: true
envKey: PANEL_APP_PORT_HTTP
labelEn: Dashboard Port
labelZh: Dashboard 端口
required: true
rule: paramPort
type: number

View File

@ -0,0 +1,7 @@
brokerClusterName = DefaultCluster
brokerName = broker-a
brokerId = 0
deleteWhen = 04
fileReservedTime = 48
brokerRole = ASYNC_MASTER
flushDiskType = ASYNC_FLUSH

View File

@ -0,0 +1,3 @@
{
"rocketMQClusterName": "DefaultCluster"
}

View File

@ -0,0 +1,74 @@
services:
namesrv:
image: apache/rocketmq:5.2.0
container_name: ${CONTAINER_NAME}-rmqnamesrv
ports:
- ${PANEL_APP_PORT_NAMESERVER}:9876
networks:
- 1panel-network
volumes:
- ./data/namesrv/logs:/home/rocketmq/logs
command: sh mqnamesrv
labels:
createdBy: "Apps"
broker:
image: apache/rocketmq:5.2.0
container_name: ${CONTAINER_NAME}-rmqbroker
links:
- namesrv
ports:
- ${PANEL_APP_PORT_FASTLISTEN}:10909
- ${PANEL_APP_PORT_LISTEN}:10911
- ${PANEL_APP_PORT_HALISTEN}:10912
networks:
- 1panel-network
environment:
- NAMESRV_ADDR=namesrv:9876
volumes:
- ./data/broker/logs:/home/rocketmq/logs
- ./data/broker/store:/home/rocketmq/store
- ./data/broker/conf/broker.conf:/opt/rocketmq-5.2.0/conf/broker.conf
command: sh mqbroker -c /opt/rocketmq-5.2.0/conf/broker.conf
labels:
createdBy: "Apps"
proxy:
image: apache/rocketmq:5.2.0
container_name: ${CONTAINER_NAME}-rmqproxy
links:
- namesrv
- broker
depends_on:
- broker
ports:
- ${PANEL_APP_PORT_REMOTINGLISTEN}:8080
- ${PANEL_APP_PORT_GRPCSERVER}:8081
networks:
- 1panel-network
restart: on-failure
environment:
- NAMESRV_ADDR=namesrv:9876
volumes:
- ./data/proxy/logs:/home/rocketmq/logs
- ./data/proxy/conf/rmq-proxy.json:/opt/rocketmq-5.2.0/conf/rmq-proxy.json
command: sh mqproxy -pc /opt/rocketmq-5.2.0/conf/rmq-proxy.json
labels:
createdBy: "Apps"
dashboard:
image: apacherocketmq/rocketmq-dashboard:latest
container_name: ${CONTAINER_NAME}-rmqdashboard
links:
- namesrv
depends_on:
- namesrv
ports:
- ${PANEL_APP_PORT_HTTP}:8080
networks:
- 1panel-network
restart: on-failure
environment:
- JAVA_OPTS=-Drocketmq.namesrv.addr=namesrv:9876
labels:
createdBy: "Apps"
networks:
1panel-network:
external: true

View File

@ -0,0 +1,3 @@
#!/bin/bash
chown -R 3000:3000 data

24
apps/rocketmq/README.md Normal file
View File

@ -0,0 +1,24 @@
# RocketMQ
**Apache RocketMQ** 是一个分布式消息和流媒体平台,具有低延迟、高性能和可靠性、万亿级容量和灵活的可扩展性。
## 主要功能:
- 消息传递模式包括发布/订阅、请求/回复和流式传输
- 金融级交易消息
- 基于 DLedger Controller 的内置容错和高可用性配置选项
- 内置消息追踪能力,也支持 opentracing
- 多功能大数据和流媒体生态系统集成
- 按时间或偏移量追溯消息
- 同一队列中可靠的 FIFO 和严格有序的消息传递
- 高效的拉推消费模式
- 单队列百万级消息累积能力
- 多种消息传递协议,例如 gRPC、MQTT、JMS 和 OpenMessaging
- 灵活的分布式横向扩展部署架构
- 闪电般快速的批量消息交换系统
- SQL、Tag等多种消息过滤机制
- 用于隔离测试和云隔离集群的 Docker 镜像
- 用于配置、指标和监控的功能丰富的管理仪表板
- 认证与授权
- 免费的开源连接器,适用于源和接收器
- 轻量级实时计算

19
apps/rocketmq/data.yml Executable file
View File

@ -0,0 +1,19 @@
name: RocketMQ
tags:
- 中间件
title: 云原生消息传递和流媒体平台
description:
additionalProperties:
key: rocketmq
name: RocketMQ
tags:
- Middleware
shortDescZh: 云原生消息传递和流媒体平台
shortDescEn: Cloud native messaging and streaming platform
type: tool
crossVersionUpdate: false
limit: 0
recommend: 0
website: https://rocketmq.apache.org/
github: https://github.com/apache/rocketmq/
document: https://rocketmq.apache.org/docs/

BIN
apps/rocketmq/logo.png Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.2 KiB