n8n
什么是n8n?
n8n 是一款开源且功能强大的工作流自动化工具,它允许用户通过可视化的方式连接不同的应用程序和服务。它巧妙地将 AI 功能与业务流程自动化相结合,无论是开发者还是非技术人员,都能利用它创建复杂的工作流,实现数据在不同系统间的自动传输与处理。
GitHub: https://github.com/n8n-io/n8n
官网: https://n8n.io
文档: https://docs.n8n.io
安装
1.npx安装
此方式要求本地机器已安装 Node.js,适合快速启动和体验 n8n。
# 此命令将下载并启动 n8n 所需的一切
npx n8n
2.Docker安装
1.使用Docker数据卷
使用 Docker 数据卷(Volume)可以自动处理文件权限问题。
# 创建数据卷
docker volume create n8n_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
# 创建目录并赋予正确权限 (n8n容器默认以用户 node, UID 1000 运行)
mkdir data
sudo chown -R 1000:1000 ./data
sudo chmod -R 755 ./data
# 创建并后台运行容器
docker run -itd --name n8n -p 5678:5678 -v ./data:/home/node/.n8n docker.n8n.io/n8nio/n8n
注册账号
启动 n8n 后,在浏览器中访问 http://localhost:5678,开始注册账号。

接着,根据提示完善账户所属公司、个人角色等信息。

随后,系统会提示你可以免费获取部分高级功能的永久激活密钥,只需输入邮箱接收许可证密钥即可。

收到许可证密钥后,进入 Settings 设置中的 Usage and plan 页面,输入密钥以激活这些付费功能。

工作台
注册登录后,你将进入首页工作台,界面清晰直观。

点击 Start from scratch 将创建一个空白工作流项目。

而点击 Test a Simple AI Agent example 则会引导你体验一个预置的 AI 智能体示例工作流。

核心概念
综述
1.工作流(Workflow)
一个由多个节点连接而成的自动化流程,可以手动触发,也可以按计划或由事件自动执行。
2.节点(Node)
工作流的基本构建单元,每个节点代表一个特定的操作或功能:
- 触发器节点(如:定时器、Webhook)
- 工作节点(如:HTTP请求、数据库查询)
- 逻辑节点(如:IF条件、合并)
3.连接(Connection)
节点之间的箭头,定义了数据流动的方向和处理的先后顺序,是串联整个工作流的脉络。
触发器
创建工作流的第一步就是选择一个触发器,它决定了工作流如何启动。

- 手动触发:点击 n8n 界面中的按钮即可运行流程,非常适合测试和调试。
- 应用事件:当 Telegram、Notion 或 Airtable 等第三方应用中发生特定事件时(如收到新消息、数据库更新)运行流程。
- 按计划执行:可以设定每天、每小时或任何自定义时间间隔定期运行流程。
- Webhook调用:在收到特定的 HTTP 请求时触发流程,常用于构建 API 端点。
- 表单提交时:利用 n8n 生成的 Web 表单收集数据,当用户提交表单时触发流程。
- 由另一个工作流执行:允许工作流之间相互调用,实现模块化和复杂逻辑编排。
- 收到聊天消息:当用户在集成的聊天界面中发送消息时触发流程,通常与 AI 节点配合使用。
- 其他方式:例如在工作流发生错误、监测到文件变更等情况下触发流程。
工作节点
添加触发器后,下一步就是添加执行具体任务的工作节点。n8n 提供了丰富的工作节点类别。

- 人工智能:构建自主代理(Agent)、总结文档内容或进行语义搜索等。
- 应用程序操作:在 Google Sheets、Telegram 或 Notion 等外部服务中执行创建、读取、更新、删除等操作。
- 数据转换:对数据进行操作、过滤、格式化或类型转换,为后续步骤做准备。
- 流程控制:实现条件分支、数据合并、循环迭代等复杂的流程逻辑。
- 核心功能:执行自定义代码、发起 HTTP 请求、设置 Webhook 等底层操作。
- 人工参与环节:在工作流执行过程中暂停,等待人工审批或输入后再继续。
- 添加另一个触发器:一个工作流可以拥有多个触发器,以适应不同的启动场景。
创建一个工作流
让我们通过一个实际案例来学习如何构建工作流。我们将创建一个“微博热点定时分析与推送”工作流:定时请求微博热搜榜 API,利用 AI 大模型对热点数据进行分析提炼,最后通过邮件发送分析结果。
定时触发器
首先,新建一个工作流。在触发器选择界面,找到能按计划执行的 On a Schedule 触发器。

接着配置触发规则。为了演示,我们设置每隔 10 秒执行一次。这里需要特别注意时区(TimeZone)的设置,确保与你的实际位置相符。

如果需要在全局修改工作流的时区,可以在工作流的设置项中进行更改。

在设置中找到 Timezone 选项,搜索并选择你所在的时区,例如 Asia/Shanghai。

HTTP Request
添加完定时触发器后,接下来需要添加具体的工作节点。在 Core 核心节点类别下,添加一个 HTTP Request 节点,它将负责定时发送请求以获取微博热搜数据。

在 HTTP Request 节点的配置面板中,填入一个微博热点 API 的 URL。配置完成后,点击 Test Step 按钮,可以立即测试该步骤并查看接口返回的原始数据,这有助于验证连接和数据处理。

数据转换处理
从 API 获取的数据可能包含许多我们不需要的字段。接下来,在 Data transformation 数据转换类别下添加一个 Edit Fields 节点,用于筛选和重塑数据。

进入字段编辑界面。左侧面板展示了上一个节点(HTTP Request)输出的数据树状结构。我们只需要其中的 data 数组字段。将其拖拽到中间的 Fields to Set 区域,并将数据类型设置为 String。最后,点击 Test Step,右侧面板会显示处理后的、更简洁的输出结果。

AI Agent
现在,数据已经准备就绪,可以交给 AI 进行分析了。在 AI Nodes 类别下,添加一个 AI Agent 工作节点。

对 AI Agent 进行配置,核心是编写提示词(Prompt)。你可以直接将左侧数据面板中的字段(例如 $json.data )拖拽到提示词编辑框中,作为 AI 分析的上下文输入。

大语言模型
添加 AI Agent 节点后,工作流图中会出现一个待连接的 Chat Model 节点。点击它以添加具体的大语言模型。

这里我们选择使用 DeepSeek 模型。你需要添加相应的 API 密钥凭证,并在模型选择下拉菜单中选中 deepseek-chat。

配置好模型后,返回到 AI Agent 的配置详情页,再次点击 Test Step 进行测试。右侧输出面板将展示大语言模型根据提示词和分析数据后生成的最终文本结果。

信息发送
AI 大模型生成的文本结果就是我们需要推送的最终信息。最后一步是将其发送出去。我们可以添加一个邮件节点(例如 Gmail)将这些信息发送到指定邮箱,当然也可以选择存入数据库等其他操作。这里我们在 Human in the loop 类别下找到了发送邮件的相关节点。

开启工作流
整个工作流配置完成后,可以先点击 Test Workflow 按钮进行一次完整流程的测试,确保各个环节无误。

测试通过后,回到工作流列表页面,将工作流的状态切换为“激活”。

激活后,点击导航栏的 Executions 选项卡,可以查看所有工作流的执行历史记录。在这里,你可以清晰地看到我们创建的工作流正按照触发器设定,每隔 10 秒钟自动执行一次。

工作流模板
概述
为了降低使用门槛,n8n 提供了极其丰富的预置自动化工作流模板,并且模板库还在不断更新。这些模板涵盖了各种常见场景,用户可以直接导入使用或在其基础上修改。

选择复制模板
我们以 Newcomer essentials: learn by doing (新手必备:边做边学)这个分类下的一个模板为例。

点击进入模板详情页后,点击 Use for free 按钮。

在弹出的窗口中,点击第一个选项:Copy template to clipboard [JSON],将模板的 JSON 定义复制到剪贴板。

使用模板
回到你的 n8n 环境,新建一个空白工作流,然后在编辑器中直接使用 Ctrl + V (或 Cmd + V)粘贴刚才拷贝的 JSON 内容。n8n 会自动解析并导入这个预置的模板工作流,你可以立即查看其结构或运行测试。

应用程序集成
概述
除了工作流模板,n8n 还集成了海量的应用程序连接器。这些集成能够极大优化你的工作流程,让 n8n 在不同软件和服务之间无缝地移动和转换数据。

使用
例如,我们点击 MySQL 应用程序集成,页面会跳转到关于“HTTP 请求和 MySQL 集成”的详细说明。

部分高级集成功能可能需要注册云端试用。不过,n8n 通常会提供详细的使用说明和可复制的工作流模板示例,你可以根据这些指引在自托管版本中实现类似功能。

论坛
n8n 拥有一个活跃的官方社区论坛。在这里,开发者可以提问、寻找已解决的问题答案、分享自己的使用经验,还能找到由社区贡献的优质教程,是学习和解决问题的好去处。

希望这篇关于 n8n 的全面解析能帮助你入门这款强大的自动化工具。如果你对构建自动化工作流或系统设计有更多兴趣,欢迎在 云栈社区 与其他开发者交流探讨。