n8n 完全教程:开源工作流自动化平台实战指南
n8n 完全教程:开源工作流自动化平台实战指南
工具类别:AI / 工作流自动化 / 低代码
官方地址:https://n8n.io
开源仓库:https://github.com/n8n-io/n8n
许可协议:Sustainable Use License(社区版免费,可自托管)
当前稳定版:2.23.x(2026 年 6 月)
一、n8n 是什么?为什么你需要它?
n8n(读作 "n-eight-n")是一款 公平代码(fair-code) 的可视化工作流自动化平台。它的核心定位是:把"代码的灵活性"和"无代码工具的速度"结合起来——你既可以像在 Zapier 那样拖拽节点,又可以在任意节点里插入 JavaScript/Python 写自定义逻辑。
2026 年 5 月,n8n 在 GitHub 上突破了 17.9 万 Star,在 JavaScript Rising Stars 2025 评选中拿下自动化品类第一名,超过 Make、Zapier、Activepieces 等同类工具。与传统 SaaS 自动化平台相比,n8n 有三个杀手锏:
- 完全自托管:可以跑在你自己的服务器、NAS、甚至树莓派上,数据不出门。
- AI 原生:内置 AI Agent、LangChain 节点、向量数据库、MCP 客户端/服务端,能直接拼装 RAG、Agent、Chatbot 工作流。
- 400+ 集成 + 任意 HTTP 节点:覆盖 Slack、Notion、GitHub、飞书、钉钉、企业微信等主流 SaaS,没集成的也能用 HTTP Request 节点搞定。
一句话总结:如果你的工作里有"重复搬运数据"的环节,n8n 几乎一定能替你完成。
二、安装步骤(全平台)
n8n 的部署方式非常灵活,下面按从易到难的顺序列出四种主流方案。
2.1 一键 npm 启动(适合本地试玩)
前提:Node.js ≥ 20。
npm install -g n8n
n8n start
启动后访问 http://localhost:5678,首次进入会引导你创建 owner 账户。
2.2 Docker Compose(推荐生产/家庭服务器部署)
创建目录 n8n-deploy 并新建 docker-compose.yml:
version: "3.8"
services:
n8n:
image: docker.n8n.io/n8nio/n8n
container_name: n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
- N8N_HOST=localhost
- N8N_PORT=5678
- N8N_PROTOCOL=http
- WEBHOOK_URL=http://localhost:5678/
- GENERIC_TIMEZONE=Asia/Shanghai
- N8N_SECURE_COOKIE=false
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
启动:
docker compose up -d
docker compose logs -f n8n # 查看启动日志
2.3 启用 PostgreSQL(生产建议)
SQLite 在并发写入时会"database is locked",生产环境强烈建议切换 PostgreSQL。修改 compose:
services:
postgres:
image: postgres:16
restart: unless-stopped
environment:
POSTGRES_USER: n8n
POSTGRES_PASSWORD: n8npass
POSTGRES_DB: n8n
volumes:
- pg_data:/var/lib/postgresql/data
n8n:
image: docker.n8n.io/n8nio/n8n
restart: unless-stopped
ports:
- "5678:5678"
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=n8npass
depends_on:
- postgres
volumes:
- n8n_data:/home/node/.n8n
volumes:
pg_data:
n8n_data:
2.4 n8n Cloud(不想运维)
如果不想自己部署,官方提供托管版 https://app.n8n.cloud,注册即可用,免费档每月 1000 次执行。
三、基础使用:30 分钟跑通第一个工作流
3.1 编辑器界面
打开 http://localhost:5678,主界面分为四块:
- 左侧节点面板:搜索 400+ 集成节点;
- 中间画布:拖拽节点、连线构成工作流;
- 右侧节点参数面板:配置单个节点的输入/输出、凭证;
- 顶部工具栏:运行、保存、激活、复制为模板。
3.2 三步搭建"RSS → 飞书机器人"工作流
场景:每天早上 9 点把 AI 相关 RSS 的最新 5 条推送到飞书群。
第 1 步:添加触发器
- 节点:
Schedule Trigger,设置为0 9 * * *(每天 9:00)。 - 描述:定时器节点,是 n8n 最常用的入口。
第 2 步:抓取 RSS
- 节点:
RSS Feed Read,URL 填https://hnrss.org/newest?q=AI。 - 测试:点 "Execute Node" 应能看到 25 条左右的文章列表。
第 3 步:截取前 5 条 + 推飞书
- 节点:
Limit,设 N=5。 - 节点:
HTTP Request,方法 POST,URL 填飞书机器人 webhook,例如:
https://open.feishu.cn/open-apis/bot/v2/hook/<your_token>
Body 用 JSON:
{
"msg_type": "interactive",
"card": {
"header": {"title": {"tag": "plain_text", "content": "今日 AI 速递"}},
"elements": [{"tag": "markdown", "content": "{{ $json.title }}\n{{ $json.link }}"}]
}
}
- 切到 Active 开关,工作流即开始按计划执行。
截图描述:在画布上可看到 4 个节点(Schedule → RSS Read → Limit → HTTP Request)通过箭头串联,整体呈"线性"布局。右侧面板展示了飞书机器人的 JSON Body 编辑器。
四、实战案例:搭建一个本地知识库问答机器人
这一节是 n8n 的"杀手级"用法——结合 LangChain 节点和向量数据库,做一个能"翻自己笔记" 的 RAG 机器人。
4.1 整体架构
Chat Trigger (Web 聊天窗口)
→ AI Agent (ReAct)
├─ OpenAI Chat Model (gpt-4o-mini)
├─ Simple Memory (保留最近 10 轮对话)
└─ Vector Store Tool (PGVector)
└─ Embeddings: text-embedding-3-small
4.2 准备数据源
- 在 n8n 左侧菜单搜
Default Data Loader节点,加载你本地的 Markdown/PDF 文件夹; - 接
Recursive Character Text Splitter,chunk size=1000,overlap=200; - 接
Embeddings OpenAI节点; - 接
PGVector节点,operation 选Insert Documents; - 执行一次,把数据灌入向量库。
4.3 搭问答工作流
- Chat Trigger:开启 "Make Chat Publicly Available",获得一个聊天 URL;
- AI Agent:Agent 类型选
Tools Agent; - 接 OpenAI Chat Model:填 API Key、Model =
gpt-4o-mini; - 接 Simple Memory:sessionId 用
$json.sessionId表达式; - 接 Vector Store Question Answer Tool:向量库选刚才的 PGVector 索引;
- 激活。
现在打开 Chat Trigger 提供的链接,就能跟机器人对话——它会先到向量库里查资料,再让 LLM 总结回答。整套链路无任何第三方 SaaS 中转,数据完全本地。
五、常见问题与解决方案
Q1:浏览器一直转圈,提示 "Loading editor..." 怎么办?
通常是 WebSocket 端口没打通。在 compose 里把 5678:5678 改成主机的全部端口暴露,或者在反代里加上 Upgrade / Connection: upgrade 头。
Q2:执行报错 "SQLITE_BUSY: database is locked"
并发高时 SQLite 的写锁是致命的。两种方案:
- 短期缓解:把
EXECUTIONS_DATA_PRUNE=true打开,定期清理历史执行; - 长期方案:迁移到 PostgreSQL(见 §2.3)。
Q3:Webhook 触发不到,URL 返回 404
n8n 有两种 URL:测试 URL(仅当前 session 有效)和生产 URL(工作流激活后才生效)。在节点里点 "Production URL" 复制即可。
Q4:AI Agent 回答不引用文档,老是"幻觉"
检查 Vector Store Question Answer Tool 节点,确认 Top K ≥ 3,并启用 Reranker(Cohere Reranker 节点);同时把 System Prompt 改成:"仅根据以下上下文回答,引用不出的内容直接说不知道。"
Q5:如何让 n8n 跑在群晖/绿联 NAS 上?
- 群晖:套件中心有第三方 n8n 套件(SynoCommunity 维护),也可手动 Container Manager 部署;
- 绿联/极空间:用 Docker Compose 模式挂载
/volume1/docker/n8n数据卷; - 内存建议 ≥ 2GB,否则 Embedding 大文件会 OOM。
Q6:执行次数太多被限流
n8n 默认对每个工作流 1 秒最多 1 次触发。如果遇到 429:
- 在
Settings → Workflow Execution调高队列并发; - 或使用 Queue Mode + Redis 多 worker(见官方文档 Scaling 章节)。
Q7:如何把 n8n 接到飞书/钉钉机器人?
- 飞书:直接用
HTTP Request节点调用/bot/v2/hook/; - 钉钉:自定义机器人 webhook 同样 HTTP POST;
- 企业微信:用
HTTP Request调/cgi-bin/message/send,需要 access_token(可加一个 HTTP 节点定时刷新)。
六、总结与资源链接
n8n 是 2026 年最值得关注的开源自动化平台之一:它既是 Zapier 的开源替代,又把 AI Agent、向量库、MCP 协议全做进了一个画布。对于想要"数据本地化 + 工作流可视化 + AI 工程化"的个人和小团队,n8n 几乎是当下的最优解。
推荐学习路径
- 官方 Level 1 课程(https://docs.n8n.io/courses/level-one/):覆盖编辑器基础 + 第一个真实工作流;
- Advanced AI 文档:https://docs.n8n.io/advanced-ai/;
- 社区论坛:https://community.n8n.io,问题响应极快;
- 模板市场:https://n8n.io/workflows,4000+ 现成工作流直接 import 即可用。
关键链接
- 官网:https://n8n.io
- GitHub:https://github.com/n8n-io/n8n
- 文档:https://docs.n8n.io
- 中文社区:https://n8n.ac.cn
- 自托管 AI Starter Kit:https://github.com/n8n-io/self-hosted-ai-starter-kit
本篇写于 2026-06-18,如需最新版细节请以官方文档为准。
相关工具: n8n 完全教程:开源工作流自动化平台实战指南 — n8n 是一个 fair-code 可视化工作流自动化平台。GitHub 17.9 万 Star,内置 AI Agent、LangChain、400+ 集成,让…