n8n
n8n
什么是n8n?
n8n是一个开源、强大的工作流自动化工具,允许用户通过可视化方式连接不同的应用程序和服务。它将 AI 功能与业务流程自动化相结合,它可以帮助开发者和非技术人员创建复杂的工作流,实现数据在不同系统间的自动传输和处理。
GitHub:https://github.com/n8n-io/n8n
官网:https://n8n.io
文档: https://docs.n8n.io
安装
1.npx安装
须确保本地机器安装NodeJS,npx是在本地机器上快速开始使用n8n的一种方式。
# 将下载启动n8n所需的一切
npx n8n
2.Docker安装
1.使用Docker数据卷
# 创建数据卷 数据卷(Volume)会自动处理权限问题
docker volume create data
# 创建容器
docker run -it --rm --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n
数据卷操作命令:
# 列出所有卷
docker volume ls
# 查看卷详情
docker volume inspect <name>
# 删除单个卷
docker volume rm <name>
# 清理无用卷
docker volume prune
# 强制删除卷
docker volume rm -f <name>
# 动删除文件
sudo rm -rf /var/lib/docker/volumes/<name>
2.直接挂载宿主机目录
不喜欢使用创建数据卷再使用的方式,这里直接使用
-v
方式挂载数据卷,
cd /opt/n8n
# 创建目录并赋予正确权限
mkdir data
sudo chown -R 1000:1000 ./data # n8n容器默认以用户 node(UID 1000)运行
sudo chmod -R 755 ./data # 直接挂载宿主机目录 ./data 时,容器内 node 用户可能没有读写权限
docker run -itd --name n8n -p 5678:5678 -v ./data:/home/node/.n8n docker.n8n.io/n8nio/n8n
注册账号
浏览器访问http://localhost:5678
,注册一个账号
接着完善账号信息
接着会提示询问:获得以下高级功能的免费激活密钥
,只需要输入邮箱接收许可证密钥
即可
获得许可证密钥后,在Settings
中的Usage and plan
项下输入密钥即可激活额外的付费功能
工作台
进入首页工作台,界面如下
Start from scratch
:创建一个空白项目
Test a Simple AI Agent example
:测试一个简单的AI Agent示例
核心概念
综述
-
工作流(Workflow)
由多个节点组成的自动化流程,可以手动触发或按计划执行。
-
节点(Node)
工作流的基本构建块,每个节点代表一个特定操作: 触发器节点(如:定时器、Webhook) 工作节点(如:HTTP请求、数据库查询) 逻辑节点(如:IF条件、合并)
-
连接(Connection)
节点间的箭头,定义数据流动方向和处理顺序
触发器
创建工作流的第一步就是选择一个触发器
手动触发:点击n8n中的按钮即可运行流程
应用事件:当Telegram、Notion或Airtable等应用中发生某些事情时运行流程
按计划进行:每天、每小时或自定义间隔运行流程
在webhook调用时:在收到HTTP请求时运行流程
表单提交时:在n8n中生成Web表单并将其响应传递给工作流
由另一个工作流执行时:当由来自不同工作流的执行工作流节点调用时运行该流程
在聊天消息中:当用户发送聊天消息时运行此流程。适用于A!节点
其他方法:在工作流错误、文件更改等情况下运行流程
工作节点
添加触发器之后就是添加工作节点,这里每一项工作节点下都有更具体的工作节点
人工智能:构建自主代理,总结或搜索文档等。
应用程序中的操作:在Google Sheets、.Telegram或Notion等应用或→服务中执行某些操作
数据转换:操作、过滤或转换数据
流动:分支、合并或循环流程等
核心:运行代码、发出HTTP请求、设置webhook等
人机互动:等待批准或人工输入后再继续
添加另一个触发器:触发器启动您的工作流程。工作流程可以有多个触器。
创建一个工作流
这里创建一个简单的
微博热点定时发送
工作流:发送请求获取微博热点数据,AI大模型分析提取数据,邮件发送提取结果
定时触发器
首先新建一个工作流,选择能定时,按计划执行的触发器:On a Schedule
接着配置定时触发规则,这里测试选择每间隔10秒执行一次,但需要注意TimeZone时区的设置
在工作流的设置项中进行工作流时区的更改设置
在TimeZone
项搜索并选择时区
HTTP Request
添加定时触发器后,接着在Core
节点下添加一个HTTP Request
工作节点用于定时执行发送请求获取数据
在HTTP Request
配置中,使用了一个微博热点API,同时执行Test Step
得到接口调用数据
数据转换处理
在Data transformation
项下添加一个Edit Fields
节点,用于修改、添加、移除数据字段
进入数据字段编辑界面,左侧是上一节点输出数据,选择需要的字段data
并拖动到中间的Fields to Set
项,数据类型设置为String
,再点击Test Step
得到最右侧的输出
AI Agent
在AI Nodes
下添加一个AI Agent
工作节点
对AI Agent配置自定义提示词,左侧数据可以直接拖动到提示中被使用
大语言模型
添加AI Agent
后得到如下工作流程图,点击Chat Model
添加大语言模型
这里使用DeepSeek
模型,需要添加模型API令牌凭证并选择使用模型
再回到AI Agent
配置详情中点击Test Step
进行测试,得到右侧最终输出结果
信息发送
AI大模型整理的输出结果在这里就是需要的最终结果,最后使用邮件方式,将这些信息发送到自定义邮箱,也可以存入数据库。
开启工作流
在工作流配置完成后,点击Test WorkFlow
进行工作流测试
当工作流测试没有问题后,回到首页,激活工作流
再点击Executions
查看工作流执行情况,这里可以发现工作流确实是以工作流触发器:每隔10秒钟开始执行
工作流模板
概述
n8n提供了丰富的自动化工作流模板,并且数量还在不断增加,这些工作流模板可以直接拿来使用
选择复制模板
这里点击任意一个自动化工作流模板,例如Newcomer essentials: learn by doing
(新手必备:边做边学)
接着点击Use for free
按钮
接着点击第一个按钮:将模板复制到剪贴板(JSON)
使用模板
在n8n环境中新创建一个工作流,然后Ctrl + V
粘贴拷贝的模版,这样就将预置模板导入到工作空间了
应用程序集成
概述
n8n同样提供了丰富的程序集成,利用软件集成优化工作流程,使n8n在不同应用程序之间无缝移动和转换数据
使用
这里点击MySQL
应用程序,将进入HTTP 请求和 MySQL 集成
说明的详细页面。
这个功能不能直接使用,需要注册账号试用。但是其有提供如何使用的说明以及工作流模板示例