n8n 工作流自动化教学指南
1. n8n 简介
n8n 是一款开源的 可视化工作流自动化工具,支持通过节点(Nodes)连接 500+ 应用和服务,实现跨平台自动化。其核心优势包括:
- 开源与自托管:数据完全可控,适合企业及个人隐私需求 33。
- 低代码/无代码:通过拖拽节点即可构建复杂工作流,支持 JavaScript 自定义逻辑 2237。
- 强大集成能力:覆盖主流服务(如 Slack、Google Drive、OpenAI、数据库等)21。
2. 安装与配置
2.1 安装方式
通过 npm(快速入门)
npm install n8n -g
n8n start --port=5678 # 默认访问 http://localhost:5678
通过 Docker(推荐生产环境)
docker run -it -p 5678:5678 -v ~/.n8n:/home/node/.n8n n8nio/n8n
注:需映射卷以持久化数据 。
进阶配置
- 数据库:生产环境建议使用 PostgreSQL(通过环境变量
DB_TYPE=postgresdb配置)。 - HTTPS:通过 Nginx 反向代理实现安全访问 。
3. 核心功能与节点
3.1 常用节点
- 触发器:Cron(定时任务)、Webhook(实时触发)。
- 逻辑控制:IF/Switch(条件分支)、Merge(数据合并)。
- 数据处理:Function(JavaScript 代码)、HTTP Request(自定义 API 调用)
- AI 集成:OpenAI、Claude 等大模型节点,支持生成文本、翻译等 。
3.2 数据流机制
- 自动迭代:处理数组数据时,n8n 会自动遍历每一项 。
- JSON 传递:节点间通过 JSON 格式交换数据,支持动态表达式(如
{{ $json.field }})。
4. 实战案例
案例 1:天气 API + 个性化提醒
- 流程:
- Webhook 接收城市参数 → OpenWeatherMap 获取天气 → Switch 判断天气条件 → Telegram 发送提醒 。
- 关键配置:
- 在 Switch 节点中设置规则(如温度 <10°C 时提示“注意保暖”)。
- 使用表达式动态插入数据(如
{{ $json.temperature }}°C)。
案例 2:AI 自动化财务记账
- 流程:
- Gmail 触发器 抓取账单邮件 → AI 解析 提取金额/类别 → Google Sheets 记录 。
- 工具:结合 DeepSeek 或 Claude 实现文本分类 。
案例 3:本地 AI 问答机器人
- 组件:
- Ollama(本地运行 LLM) + Qdrant(向量数据库) + n8n(工作流编排)。
- 步骤:
- 用户输入 → 向量搜索匹配知识库 → LLM 生成回答 → 返回结果 。
5. 进阶技巧
5.1 自定义节点开发
- 使用 TypeScript 编写节点,扩展 n8n 功能 。
- 示例:开发一个连接内部系统的节点 。
5.2 错误处理与监控
- Error Trigger 捕获异常并通知(如 Slack 告警)。
- 日志分析:通过 Postgres 记录执行历史 。
5.3 性能优化
- 批量处理:合并 API 请求减少调用次数 。
- 缓存:使用 Redis 节点存储中间数据 。
6. 学习资源
- 官方模板库:n8n.io/workflows 21。
- 中文教程:n8n 中文社区 。
- 视频教程:Bilibili 系列《n8n完全入门指南》36。
总结
n8n 的灵活性和扩展性使其成为自动化领域的利器,无论是简单的数据同步还是复杂的 AI 工作流,都能高效实现。建议从模板入手,逐步探索自定义逻辑和高级集成。