modify: S3对象存储

This commit is contained in:
2026-08-21 15:29:59 +08:00
parent fc330f4409
commit 541a9b5e33
5 changed files with 59 additions and 0 deletions
+14
View File
@@ -23,3 +23,17 @@ tags = ["demo", "process-plugin"]
# ====== Worker 运行时配置(由 worker_serve 传递给 create_workers) ====== # ====== Worker 运行时配置(由 worker_serve 传递给 create_workers) ======
[workers.config] [workers.config]
greeting_prefix = "Hello" # 演示插件私有配置项 greeting_prefix = "Hello" # 演示插件私有配置项
# ====== 文件传输:直连 S3/Minio 对象存储(可选,默认不启用) ======
# 启用后 demo.storage.* 端点可用(预签名 URL 直传直取 + base64 小文件传输),
# 数据路径不经过网关,详见 docs/process-plugin.md「文件传输:直连 S3/Minio」。
# 取消下面 8 行注释并填好 Minio 地址/密钥即可启用;连接失败会告警降级(端点返回
# "storage 未配置" 错误),不会影响其他端点。
# [workers.config.storage]
# endpoint = "192.168.1.10:9000" # Minio 地址 host:port(不带协议前缀)
# access_key = "minioadmin"
# secret_key = "minioadmin"
# bucket = "chongming-files"
# secure = false # false=http(默认),true=https
# region = "" # 可选
# auto_create_bucket = true # 可选,默认 true:启动时确保 bucket 存在
+11
View File
@@ -0,0 +1,11 @@
[GET]
summary = "进程插件示例:下载文件为 base64(经 Zenoh 从 Minio 读取)"
subject = "demo.storage.download_bytes"
params = ["object_key: str"]
auth_required = false
[GET.response_model]
object_key = { type = "str", required = true }
data_b64 = { type = "str", required = true }
size = { type = "int", required = true }
timestamp = { type = "float", required = true }
+12
View File
@@ -0,0 +1,12 @@
[GET]
summary = "进程插件示例:获取预签名下载 URL(设备直取 Minio,不经网关)"
subject = "demo.storage.presign_download"
params = ["object_key: str"]
auth_required = false
[GET.response_model]
object_key = { type = "str", required = true }
presigned_url = { type = "str", required = true }
method = { type = "str", required = true }
expires = { type = "int", required = true }
timestamp = { type = "float", required = true }
+12
View File
@@ -0,0 +1,12 @@
[POST]
summary = "进程插件示例:获取预签名上传 URL(设备直传 Minio,不经网关)"
subject = "demo.storage.presign_upload"
params = ["filename: str"]
auth_required = false
[POST.response_model]
object_key = { type = "str", required = true }
presigned_url = { type = "str", required = true }
method = { type = "str", required = true }
expires = { type = "int", required = true }
timestamp = { type = "float", required = true }
+10
View File
@@ -0,0 +1,10 @@
[POST]
summary = "进程插件示例:base64 小文件上传(经 Zenoh 写入 Minio)"
subject = "demo.storage.upload_bytes"
params = ["object_key: str", "data_b64: str"]
auth_required = false
[POST.response_model]
object_key = { type = "str", required = true }
size = { type = "int", required = true }
timestamp = { type = "float", required = true }