n8n 是一个采用公平代码(fair-code)模式的平台,可用于构建和部署 AI 智能体与自动化工作流。你可以将可视化画布与自定义代码结合,在本地自行托管或使用 n8n 云服务,并连接 1500 多种集成。从原型验证到生产运行,n8n 能帮助你构建值得信赖、可处理实际业务的 AI 自动化流程。
- AI 原生自动化平台:使用自己的数据、模型和工具构建并运行 AI 工作流与多步骤智能体
- 模型灵活,无供应商锁定:连接 OpenAI、Anthropic、Google 或开源模型,无需改变整体架构即可切换提供商
- 从原型到生产:设计包含逻辑判断、工具调用、人工审批和完整可观测能力的多步骤 AI 工作流
- 按需使用代码:将可视化编排与 JavaScript、Python 和 npm 包结合,处理复杂的 AI 自动化场景
- 满足企业级需求:支持自行托管或安全部署,并提供基于角色的访问控制、审计记录和敏感数据保护能力
- 复用丰富生态:通过 1500 多种集成和 9000 多个工作流模板,将 AI 接入现有系统
已安装 Docker 时,可直接运行:
curl -fsSL https://get.n8n.io | sh也可以使用以下方式手动启动。
安装 Node.js 后,可以直接启动 n8n:
npx n8ndocker volume create n8n_data
docker run -it --rm \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
docker.n8n.io/n8nio/n8n启动后访问 http://localhost:5678 打开编辑器。
仓库的 docker-compose 目录提供了一套包含以下组件的部署配置:
n8n:Web UI 与 API 主服务task-runners:外部任务执行器caddy:反向代理与自动 HTTPS
部署前请确保:
- 已安装 Docker,且
docker compose命令可用 - 服务器已开放
80和443端口 - 域名的 A 或 AAAA 记录已指向部署服务器
编辑 docker-compose/Caddyfile,将示例域名替换为真实域名:
n8n.example.com {
reverse_proxy n8n-main:5678
}然后编辑 docker-compose/docker-compose.yml,确保以下配置使用相同域名:
N8N_HOST=n8n.example.com
WEBHOOK_URL=https://n8n.example.com/
生成一个新的认证令牌:
openssl rand -hex 32将生成的值同时写入 n8n 和 task-runners 服务的 N8N_RUNNERS_AUTH_TOKEN,两处必须完全一致。不要将真实令牌提交到仓库,建议通过 .env 文件或密钥管理系统注入。
用于生产环境时,还应将 NODE_ENV 设置为 production,并根据许可证和运行环境关闭 N8N_ENTERPRISE_MOCK。
cd docker-compose
docker compose up -d
docker compose ps按需查看日志:
docker compose logs -f n8n
docker compose logs -f task-runners
docker compose logs -f caddy服务启动后访问 https://你的域名。建议创建并执行一个简单工作流,再运行包含代码或任务执行节点的工作流,以确认主服务、HTTPS 和 task-runners 均正常工作。
完整配置说明、数据持久化、更新方式和常见运维命令请参阅 Docker Compose 部署说明。
如需帮助或希望与其他用户交流,请访问 n8n 社区论坛。
n8n 采用公平代码模式,并根据可持续使用许可证和 n8n 企业许可证发布。
- 源代码可见:源代码始终公开可查
- 支持自行托管:可以部署到自己的运行环境
- 易于扩展:可以添加自定义节点和功能
如需额外功能和支持,可联系 n8n 企业许可团队。有关许可证模式的更多信息,请参阅许可证文档。
发现缺陷 🐛 或有新功能建议 ✨?请查阅贡献指南,了解开发环境配置与最佳实践。
希望参与塑造自动化技术的未来?欢迎查看 n8n 招聘职位并加入团队。
简短回答: n8n 是“nodemation”的缩写,读作“n-eight-n”。
详细回答: 创始人兼 CEO Jan Oberhauser 在为项目寻找一个拥有可用域名的名称时,发现想到的好名字几乎都已被占用,最终选择了“nodemation”。其中,“node”既代表节点视图,也代表 Node.js;“mation”则来自“automation”,即项目所要实现的自动化目标。但这个名字太长,不适合在命令行中频繁输入,因此最终缩写为“n8n”。

