14.流程自动化工具:n8n和家庭自动化工具:node-red

n8n

安装

docker方式

https://docs.n8n.io/hosting/installation/docker/

#https://hub.docker.com/r/n8nio/n8n
docker pull n8nio/n8n:latest
docker rm -f n8n;
docker run -it \
--network macvlan --hostname n8n \
-e TZ="Asia/Shanghai" \
-e GENERIC_TIMEZONE="Asia/Shanghai" \
-e DB_TYPE=mysqldb \
-e DB_MYSQLDB_DATABASE=n8n \
-e DB_MYSQLDB_HOST=192.168.199.100 \
-e DB_MYSQLDB_PORT=3306 \
-e DB_MYSQLDB_USER=root \
-e DB_MYSQLDB_PASSWORD=admin \
--name n8n \
-d -p 5678:5678 \
-v /mnt/usb2/n8n:/home/node/.n8n \
n8nio/n8n:latestn8n start --tunnel

k8s方式

https://truecharts.org/charts/stable/n8n

helm upgrade --install -n n8n --create-namespace my-n8n oci://tccr.io/truecharts/n8n -f values.yaml

values.yaml 如下:

#https://github.com/truecharts/public/blob/master/charts/stable/n8n/values.yaml
env:- name: N8N_SECURE_COOKIEvalue: "false"

使用示例

01.定时执行脚本上报PVE温度

在之前文章中:06.Proxmox ve(PVE) 显示CPU温度、NVME硬盘温度、主板温度(三种方式),介绍了一劳永逸方式,上报温度到InfluxDB中,其中创建定时任务使用的Linux的cron,这次打算使用n8n来实现此功能。下将下面的给注释掉:

nano /etc/cron.d/influx_stats# Upload stats to InfluxDB2
#* * * * * root /root/sensors/pve_temp_stats_to_influxdb2.sh >/dev/null 2>&1

配置两个触发节点:
运行一次:Manual Trigger node
定时触发:Schedule Trigger node
在这里插入图片描述
配置SSH执行节点:
SSH Execute Command

bash pve_temp_stats_to_influxdb2.sh  >/dev/null 2>&1

在这里插入图片描述
执行结果:
在这里插入图片描述

node-red

安装

k8s方式

https://truecharts.org/charts/stable/node-red/

helm upgrade --install -n node-red --create-namespace node-red oci://tccr.io/truecharts/node-red

docker-compose 方式

  # https://nodered.org/docs/getting-started/docker#docker-stack--docker-compose################################################################################# Node-RED Stack or Compose################################################################################# docker stack deploy node-red --compose-file docker-compose-node-red.yml# docker-compose -f docker-compose-node-red.yml -p myNoderedProject up################################################################################node-red:container_name: node-redimage: nodered/node-red:3.1.9environment:- TZ=Asia/Shanghaiports:- "1880:1880"volumes:- /root/node-red:/data- /root/node-red/node_modules:/usr/src/node-red/node_modulesrestart: unless-stoppedprivileged: truenetwork_mode: host

节点管理

嫌麻烦,可以一键安装:

npm install node-red-contrib-flow-manager node-red-contrib-home-assistant-websocket

node-red-contrib-flow-manager

https://flows.nodered.org/node/node-red-contrib-flow-manager
flow-manager将您的flows.json分离为多个文件,便于今后由于越来越多的flow在一个文件里面不好维护,子目录如下:
● /flows/flow name
● /subflows/subflow name
● /config-nodes.json (global config nodes will be stored here)

安装之前这样:

d@d:/mnt/k8s-csi/pvc-5ddd6131-373b-45eb-811d-493f5fa6ae3d$ ls
flows_cred.json  flows.json  lib  node_modules  package.json  package-lock.json  settings.js

安装之后这样:

d@d:/mnt/k8s-csi/pvc-5ddd6131-373b-45eb-811d-493f5fa6ae3d$ ls
config-nodes.json      flow-manager-nodes-order.json  flows_cred.json  lib           package.json       settings.js
flow-manager-cfg.json  flows                          flows.json       node_modules  package-lock.json  subflows

node-red-contrib-home-assistant-websocket

https://flows.nodered.org/node/node-red-contrib-home-assistant-websocket
Node-RED通过websocket和REST API与Home Assistant集成

配置

https://zachowj.github.io/node-red-contrib-home-assistant-websocket/guide/#configuration

demo

这块的内容有点多,到时候合并到home-assistant里面讲
在这里插入图片描述
里面的示例可以参考这个:
https://github.com/node-red/node-red/tree/master/packages/node_modules/%40node-red/nodes/examples/common

进阶示例:
https://cookbook.nodered.org/

编辑器教程:
https://nodered.org/docs/user-guide/editor/

问题

1.node-red下载节点很慢怎么办?
输入命令

npm config set registry http://mirrors.cloud.tencent.com/npm/
或
npm config set registry https://registry.npmmirror.com

验证命令

npm config get registry
如果返回https://registry.npmmirror.com,说明镜像配置成功

2.Error: EACCES: permission denied, copyfile
https://github.com/node-red/node-red-docker/issues/221

sudo chown 1000 /root/node-red;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/900174.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

哈密尔顿路径(Hamiltonian Path)及相关算法题目

哈密尔顿路径要求访问图中每个顶点恰好一次,通常用于解决旅行商问题(TSP)或状态压缩DP问题。 哈密尔顿路径(Hamiltonian Path)是指在一个图中经过每个顶点恰好一次的路径。如果这条路径的起点和终点相同(即…

面试算法高频02-树

树类型对比 数据结构定义节点特点遍历方式常见操作时间复杂度(平均)时间复杂度(最坏)空间复杂度(最坏)与其他结构关系应用场景树有根节点,分层级,包含父子、兄弟节点及子树关系的非…

数论4 组合数

目录 前言 求法一 代码 求法二 代码 求法三 代码 求法四 代码 前言 今天要将最后一部分,主要涉及组合数的四种求法。 前置知识 组合数的通项公式: 组合数的递推公式: 卢卡斯定理: 我们今天需要求的四种求法主要基…

构建自己的私有 Git 服务器:基于 Gitea 的轻量化部署实战指南

对于个人开发者、小型团队乃至企业来说,将项目代码托管在 GitHub、Gitee 等公共平台虽然方便,但也存在一定的隐私与可控性问题。 搭建一套私有 Git 代码仓库系统,可以实现对源码的完全控制,同时不依赖任何第三方平台,…

Linux操作系统 4.Linux实用操作

一、各类小技巧(快捷键) 1.CTRL C 强制停止 1.Linux某些程序的运行,如果想要强行停止它,可以使用ctrlc 2.命令输入错误,也可以通过快捷键ctrl c,退出当前输入,重新输入,或者ctrlc跳过当前这…

react redux的学习,单个reducer

redux系列文章目录 一 什么redux? redux是一个专门用于做状态管理的JS库(不是react插件库)。它可以用在react, angular, vue等项目中, 但基本与react配合使用。集中式管理react应用中多个组件共享的状 简单来说,就是存储页面的状态值的一个库&#xf…

PCI与PCIe接口的通信架构是主从模式吗?

PCI(Peripheral Component Interconnect)总线在通信架构上本质是主从模式,但其具体实现和角色分配在不同版本(如传统PCI与PCI Express)中存在差异。以下是详细分析: 传统PCI总线的主从模式 (1) 基本架构 主…

java项目挂机自动重启操作指南

前段时间有个伙伴问我,java项目挂机怎么自动重启。。。。。。今天就写一个 .sh脚本来实现应用挂机的自动重启功能 #!/bin/bash # 查询mita的进程个数 countps -ef | grep mita.jar | grep -v "grep" | wc -l # echo $count nowtimedate "%Y-%m-%d %H…

开放最短路径优先 - OSPF【LSA详细】

目录 LSA的头部结构 LSA类型 LSA数据包 LSA的主要作用是传递路由信息。 LSA的头部结构 共占20个字节,不同类型的LSA头部字段部分都是相同的。 链路状态老化时间(Link-State Age) 2个字节。指示该条LSA的老化时间,即它存在了多长时间,单位…

SpringBoot+Spring+MyBatis相关知识点

目录 一、相关概念 1.spring框架 2.springcloud 3.SpringBoot项目 4.注解 5.SpringBoot的文件结构 6.启动类原理 二、相关操作 1.Jar方式打包 2.自定义返回的业务状态码 3.Jackson 4.加载配置文件 5.异常处理 三、优化配置 1.简化sql语句 2.查询操作 复杂查询 一…

《双影奇境》手机版上线?ToDesk用跨平台技术实现「全设备云电脑3A游戏」

《双影奇境》是由Hazelight Studios研发发行的一款双人合作冒险类游戏,玩家们在游戏中将扮演米欧和佐伊两位风格迥异的女作家,剧情讲述的是她们被骗进入一台意在窃取创意的机器后便陷入了自己创作的故事之中,并且必须相互依靠,努力…

【教程】Windows下 Xshell 连接跳板机和开发机

需求 使用远程连接工具 Xshell 连接跳板机,再从跳板机连接开发机,用户登陆方式为使用密钥。 方法 首先,建立一个会话,用于配置跳板机信息和开发机转跳信息: 在【连接】页面,给跳板机取个名字&#xff0c…

如何快速入门物联网单片机开发?

背景 物联网单片机硬件开发涉及多个阶段,元器件是否“自己设计”取决于具体需求。以下是详细解答和学习方案: 一、元器件是否自己设计? 通用元器件: 大多数情况下,开发者直接使用现成的标准化元器件(如电阻…

每日一题(小白)模拟娱乐篇11

由题可知就是要求计算一个数字,可以整除10进制的每一位,亦可以整除8进制和16进制的每一位。要求找出第2023个能够在三个进制下同时被10进制整除的数字。 Java中已经封装了进制转换的方法,以下是一些常用的转换方法:👇…

阿里巴巴langengine二次开发大模型平台

阿里巴巴LangEngine开源了!支撑亿级网关规模的高可用Java原生AI应用开发框架 - Leepy - 博客园 阿里国际AI应用搭建平台建设之路(上) - 框架篇 基于java二次开发 目前Spring ai、spring ai alibaba 都是java版本的二次基础能力 重要的是前端工作流 如何与 服务端的…

MINIQMT学习课程Day8

获取qmt账号的资金账号后,我们进入下一步,如何获得当前账号的持仓情况 还是之前的步骤,打开qmt,选择独立交易, 之后使用pycharm,编写py文件。 from xtquant import xtdata from xtquant.xttrader import…

在QGIS中将矢量数据导出为JSON

在QGIS中将矢量数据导出为JSON的完整操作指南如下,支持GeoJSON标准格式及自定义配置: 一、标准GeoJSON导出(推荐) 适用场景:生成符合OGC标准的地理JSON文件,适用于Web地图开发 准备图层 确保目标图层在QG…

Netty——连接超时 与 断开重连

文章目录 1. 处理连接超时和断开重连的原因2. 处理连接超时和断开重连的方法2.1 处理连接超时2.1.1 步骤一:配置连接超时时间2.1.2 步骤二:监听连接结果 2.2 处理断开重连2.2.1 步骤一:监听连接断开事件2.2.2 步骤二:实现重连逻辑…

Redis 与 AI:从缓存到智能搜索的融合之路

Redis 与 AI:从缓存到智能搜索的融合之路 在当今数字化时代,Redis 不仅是一个高性能的缓存系统,更是一个强大的 AI 支持平台。Redis 通过其向量数据库功能和 AI 工具,为现代应用提供了独特的技术优势。 一、Redis 的 AI 能力 &…

LeetCode435 -- 预定会议问题

0. ref 参考自 1. 题目描述 预定会议问题:给定我们一堆区间,区间不能重叠( [ 1 , 2 ] [1,2] [1,2] 和 [ 2 , 3 ] [2,3] [2,3] 的 2 2 2 不算重叠),求最多能保留多少个区间? 做法:贪心&#…