使用n8n构建本地工作流

简介

n8n 是一个开源免费的自动化工作流平台,它提供了 200 多个不同的节点来自动化工作流程,通过编排,可以实现跨不同服务的自动化流程。它的优点是开源、可以自托管、下载安装方便、易于使用,可以互联的服务包括 Github、Google、RSS、Slack、Telegram、Gitlab、Redis、RabbitMq、数据库等等上百种服务。使用 n8n 可以方便地实现当 A 条件发生,触发 B 服务这样的自动工作流程。

部署

n8n 分为两个版本:

  • 云服务版本: 官方提供的云服务版本,到官网上注册账号使用,需要付费

  • 自托管版本: n8n 项目本身有开源版本,可以自己编译源码部署,也可以通过官方提供的 Docker 镜像,使用 Docker 、Docker Compose部署。

Github地址:

https://github.com/n8n-io/n8n

官方文档地址:

https://docs.n8n.io/

入门视频:

https://www.bilibili.com/video/BV1RNEFz9EkD/?spm_id_from=333.337.search-card.all.click&vd_source=5b52d481be409c627b2ffbd1e8bcf9ad

官方模版市场:

https://n8n.io/workflows/

与其它工作流平台对比:

使用npm安装

npm install n8n -g

start

n8n start

update

npm update -g n8n

使用Docker安装

::: 推荐使用 Docker 进行部署,简单快捷,没有太多依赖问题 :::

docker volume create n8n_data

docker run -it --name n8n -p 5678:5678 -v n8n_data:/home/node/.n8n docker.n8n.io/n8nio/n8n

在默认情况下,n8n 会使用 SQLite 数据库进行数据存储,我们可以通过配置环境变量,把存储切换到 PostgresDB

docker volume create n8n_data

docker run -it --rm \
 --name n8n \
 -p 5678:5678 \
 -e DB_TYPE=postgresdb \
 -e DB_POSTGRESDB_DATABASE=<POSTGRES_DATABASE> \
 -e DB_POSTGRESDB_HOST=<POSTGRES_HOST> \
 -e DB_POSTGRESDB_PORT=<POSTGRES_PORT> \
 -e DB_POSTGRESDB_USER=<POSTGRES_USER> \
 -e DB_POSTGRESDB_SCHEMA=<POSTGRES_SCHEMA> \
 -e DB_POSTGRESDB_PASSWORD=<POSTGRES_PASSWORD> \
 -v n8n_data:/home/node/.n8n \
 docker.n8n.io/n8nio/n8n

部署完成之后,打开 http://:5678

注册之后,就会正式进入 n8n 系统中

图例可以看到,n8n 的主界面分为两部分, Workflows 和 Credentials。Workflows 主要负责流程的编排 + 运行控制。Credentials 主要负责流程运行中与其他第三方应用的连接与授权。

功能节点介绍

n8n 中的功能节点共分为 6 类,分别是:

  1. Action in an app

连接海量的第三方应用,包括常用的 Notion、AWS 相关产品、Google 相关产品以及长用的数据库类产品(MySQL、Redis、Elasticsearch 等) 和社交类产品(Facebook、Twitter)等等共 1013 个

详情可以参考: https://n8n.io/integrations/

  1. Data transformation

关于数据转换相关的节点,包括时间操作、数据修改、数据过滤、循环遍历、数据统计、数据排序、自定义代码处理等。

  1. Flow

关于流程相关的节点,包括流程分支判断、流程过滤、流程合并、流程等待以及错误流程处理等相关。

  1. Core

核心节点,包括代码执行(JavaScript、Python)、HTTP 请求、Webhook、指令执行、等等。

  1. Advanced AI

关于 AI 大模型相关节点,包括 OpenAI 相关调用、其他 LLM 相关调用以及 AI 相关的记忆功能节点、联网功能节点等。

  1. Trigger

触发器相关,n8n 支持手动触发、定时触发 webhook 触发、聊天消息触发等多种触发方式。

构建工作流方式

自定义创建

自定义创建就是根据内置的功能点一步一步自己添加和解析数据

通过模板创建

n8n官方站点上内置了很多现成的模板,可以直接复制过来拿来使用:https://n8n.io/workflows/

进入某一个模板详情后,点击use for  free,复制弹出框的copy(选择JSON格式),在自己的面板中,选择创建WorkFlow,然后粘贴即可

演示示例

Chat Agent

抓取天气信息推送

RSS抓取插入MySQL   

Chat阅读后总结,通过Gmail推送

打 赏