Home Assistant MinIO 集成 minio.get 动作完全指南:将对象存储文件下载到本地文件系统

发布时间:2026/11/10 5:04:48

Home Assistant MinIO 集成 minio.get 动作完全指南:将对象存储文件下载到本地文件系统 Home Assistant MinIO 集成 minio.get 动作完全指南将对象存储文件下载到本地文件系统【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io导读minio.get是 Home Assistant MinIO 集成提供的下载动作Action用于将 MinIO 对象存储S3 兼容中的对象下载并保存到本地文件系统。本指南以 source/_actions/minio.get.markdown 为主干完整讲解该动作的前置条件、UI 与 YAML 两种使用方式、三个必填参数并结合 MinIO 集成文档 与minio.put、minio.remove配套动作给出可复制运行的自动化示例。读完后你将掌握如何在自动化与脚本中把相机快照、备份文件等对象从 MinIO 拉取到本地并正确处理路径白名单与事件触发。minio.get 动作是什么Get动作从 MinIO 桶bucket中下载一个对象object并将其保存为本地文件系统上的一个文件Bucket要从中下载的桶名称。Key对象在桶中的键key即对象的存储路径标识。File path保存到本地文件系统的目标路径。它在自动化中的典型应用场景是当系统中其他部分需要 MinIO 中已存储的文件时——例如取回此前由minio.put上传的相机快照、恢复备份文件、拉取其他设备生成的报告——无需人工操作直接由自动化完成下载。该动作不支持 targets目标选择。在 UI 中创建该动作时不会提示你选择区域area、设备device、实体entity或标签label因为它操作的是桶与键而非实体。前置条件allowlist_external_dirs 路径白名单使用minio.get之前必须满足一个关键前置条件目标File path所在的目录必须被添加到 Home Assistant 的allowlist_external_dirs配置项中。该配置位于configuration.yaml的homeassistant:小节用于限制集成访问外部目录的范围。只有白名单内的路径MinIO 集成才允许写入下载文件。示例homeassistant: allowlist_external_dirs: - /data/camera_files - /tmp如果不配置白名单minio.get动作将无法把文件保存到本地路径。同理minio.put动作读取本地文件同样受此白名单约束。从 UI 使用该动作如果你偏好可视化配置在自动化或脚本中按以下步骤添加进入设置Settings自动化与场景Automations scenes。打开一个已有自动化或脚本若新建选择创建自动化Create automation创建新自动化Create new automation。若是新建自动化在When何时部分添加触发条件脚本无需触发器它们由其他内容调用时执行。在Then do然后做部分选择添加动作Add action。在搜索框中搜索并选择Minio: Get。填写Bucket、对象Key以及要保存到的File path。点击保存Save。UI 中三个字段全部必填含义如下字段说明必填Bucket要从中下载的桶名称是Key对象在桶中的键是File path本地文件系统上保存文件的目标路径是在 YAML 中使用该动作在 YAML 中该动作被引用为minio.get。一个基础示例action: minio.get data: bucket: camera-files key: front_camera/snapshot.jpg file_path: /data/camera_files/snapshot.jpg该示例把camera-files桶中键为front_camera/snapshot.jpg的对象下载到本地/data/camera_files/snapshot.jpg。YAML 参数参考参数说明必填类型bucket要从中下载的桶名称是stringkey对象在桶中的键是stringfile_path保存文件的本地文件系统路径是string从源码文档的 YAML 定义minio.get看三个参数均为必填字符串没有可选参数与默认值。在自动化中使用在自动化中动作需要放在actions:列表下automation: - alias: Download new MinIO object triggers: - trigger: event event_type: minio actions: - action: minio.get data: bucket: {{ trigger.event.data.bucket }} key: {{ trigger.event.data.key }} file_path: /tmp/{{ trigger.event.data.key | basename }}实战示例当对象被添加到桶时自动下载结合 MinIO 集成文档 中listen的事件监听机制你可以实现对象一入桶即自动下载的完整链路触发条件Trigger一个 MinIO 桶创建对象的事件s3:ObjectCreated:*动作ActionMinio: Get完整自动化 YAMLautomation: - alias: Download new MinIO object triggers: - trigger: event event_type: minio actions: - action: minio.get data: bucket: {{ trigger.event.data.bucket }} key: {{ trigger.event.data.key }} file_path: /tmp/{{ trigger.event.data.key | basename }}这里通过{{ trigger.event.data.bucket }}、{{ trigger.event.data.key }}等模板从事件负载中动态取桶名与键再用| basename过滤器提取键的最后一段作为本地文件名从而避免写死路径、适配任意新对象。要让该自动化真正被触发需在 MinIO 集成配置中开启事件监听。集成文档 MinIO 集成配置 给出了完整配置项minio: host: localhost port: 9000 access_key: ACCESS_KEY secret_key: SECRET_KEY secure: false其中listen配置项用于声明要监听的事件支持以下子键子键说明必填类型默认值bucket要监听的桶是string—prefix过滤文件事件的前缀否stringsuffix过滤文件事件的后缀否string.*events要监听的文件事件类型否strings3:ObjectCreated:*监听配置示例只监听camera-files桶下以.jpg结尾、front_camera/前缀开头的新增对象minio: host: localhost port: 9000 access_key: ACCESS_KEY secret_key: SECRET_KEY secure: false listen: - bucket: camera-files prefix: front_camera/ suffix: .jpg events: s3:ObjectCreated:*与 minio.put、minio.remove 组成完整文件生命周期minio.get并非孤立动作它与 MinIO 集成提供的另外两个动作协同可覆盖上传—下载—清理的完整文件生命周期minio.put将本地文件上传到 MinIO 桶参数为bucket、key、file_path本地源文件路径。典型场景是相机检测到移动时抓拍快照并上传归档。minio.remove从桶中删除指定bucket、key的对象典型场景是每日定时清理一周前的旧快照保持存储整洁。集成文档 MinIO 集成配置 中给出了一个上传 清理组合的完整自动化automation: - alias: Upload camera snapshot triggers: - trigger: event event_type: folder_watcher event_data: event_type: created actions: - delay: 00:00:01 - action: minio.put data: file_path: {{ trigger.event.data.path }} bucket: camera-image-object-detection key: input/{{ now().year }}/{{ (now().month | string).zfill(2) }}/{{ (now().day | string).zfill(2) }}/{{ trigger.event.data.file }} - delay: 00:00:01 - action: shell_command.remove_file data: file: {{ trigger.event.data.path }}配合minio.get即可实现本地文件生成 → 上传 MinIO → 他处按需下载 → 过期删除的完整数据流转。快速调试在开发者工具中试运行不想写 YAML 也可以先验证动作效果进入设置Settings工具Tools动作Actions搜索minio.get按提示填入bucket、key、file_path三个字段点击执行动作Perform action即可在真实环境中看到文件是否被成功下载无需创建任何自动化或脚本。注意事项与常见问题路径白名单是硬约束file_path所在目录必须出现在allowlist_external_dirs中否则动作失败。配置后需重启 Home Assistant 使其生效。该动作不支持 targets不会出现区域、设备、实体或标签选择所有操作通过bucketkey定位对象。事件负载字段监听minio事件时trigger.event.data中可用的字段包括bucket、key、file_name等见集成文档示例模板引用时需与实际事件结构一致。secure参数MinIO 集成连接使用 HTTPS 还是 HTTP 由secure布尔值控制默认false即 HTTP自建 MinIO 服务常用localhost:9000secure: false。以上内容均以当前仓库文档为准动作定义见 source/_actions/minio.get.markdown配套动作见 minio.put 与 minio.remove集成整体配置见 source/_integrations/minio.markdown。【免费下载链接】home-assistant.io:blue_book: Home Assistant User documentation项目地址: https://gitcode.com/GitHub_Trending/ho/home-assistant.io创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/10 5:07:24

编程智能体重构软件开发流程:从需求到合并的实战指南

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

2026/11/10 5:44:23

Docker多阶段构建实战:从1GB镜像到几十MB的优化指南

说实话,我第一次在团队看到同事上传的镜像时,差点没绷住。一个内部小工具,代码量不到两千行,打出来的镜像 1.2GB。问了下 Dockerfile 内容,果然还是老套路:FROM ubuntu,装一堆编译依赖&#xff…

2026/11/11 4:27:46

特种作业证电力电缆千万别踩坑,外省证书怎么转过来?

特种作业证电力电缆千万别踩坑,外省证书怎么转过来? 之前考的证在外省能不能转过来?这可能是很多在外地打工、或者跨省发展的小伙伴最关心的问题。特别是在特种作业证电力电缆这个领域,很多人在外省考的证,回家乡或换城市之后,往往发现不被认可。这不是…

2026/11/11 4:27:46

电工证复审测试题2026河南最新政策下怎么准备不挂科

电工证复审测试题2026河南最新政策下怎么准备不挂科 实操考试心里没底怕挂科?别慌!2026河南最新政策已经明确,电工证复审测试题的考核内容、流程、以及培训方式都有了新变化。作为商丘房建工程从业者,很多一线电工都面临一个现实问题:复审测试如…

2026/11/11 4:27:46

菏泽在哪报考电工证网上查询攻略,工地太忙根本没时间复习考试

菏泽在哪报考电工证网上查询攻略,工地太忙根本没时间复习考试 工地太忙根本没时间复习考试,这几乎是所有一线工人的共同烦恼。尤其在菏泽这样的施工活跃区域,很多电工证的报考者都是在工地上边干边学,根本没时间系统复习。但别急, 菏泽在哪报考电工证…

2026/11/11 4:22:46

晋中市特种工培训报名门槛低吗?2026河南最新政策全解析

晋中市特种工培训报名门槛低吗?2026河南最新政策全解析 你是不是也担心学历不高报不了晋中市特种工培训?其实不然,2026河南最新政策明确规定,只要年满18周岁、具备初中及以上学历、身体健康、无妨碍从事相应特种作业的疾病和生理缺陷,就完全符…

2026/11/10 8:12:38

电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。…

2026/11/11 0:02:26

考低压电工证通过率考试真题与备考技巧

低压电工证通过率高不高?学历不高也能考,值不值得考? 你是不是总听说电工证能帮你找高薪工作,但又担心自己学历不够,考不上?其实,低压电工证考试门槛并没有你想象中那么高,关键是方法对不对。这篇文章就告诉你, 考低压电工证通过率到底有多高 ,…

2026/11/11 0:02:26

低压电工证学时千万别踩坑,濮阳毕业生怎么避坑报名

低压电工证学时千万别踩坑,濮阳毕业生怎么避坑报名 你是不是也和我一样,刚毕业就听说低压电工证学时必须达标才能上岗?可一打听,发现报名机构五花八门,价格参差不齐, 不知道去哪报名怕被中介坑…

2026/11/10 20:08:15

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/10 10:29:37

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑