飞牛NAS本地化部署n8n打造个人AI工作流中心
n8n是一个开源的工作流自动化工具,类似于Zapier和IFTTT,但它更加灵活和强大 。它允许用户通过图形化界面,以拖拽的形式构建自动化工作流,将不同的应用程序和服务连接起来,实现各种自动化任务 。
n8n最初的用途是自动化日常工作流,帮助用户节省时间,提高工作效率。在AI技术出现后,n8n更是成为了连接AI与数字世界的桥梁,因为它能够让AI与超过1000种不同的服务进行交互,几乎使AI能与赛博世界中的任何其他主体畅通无阻。
n8n的主要优势包括:
- 部署简单:支持Docker一键私有化部署,也提供云服务选项。
- 可接入服务强:集成了超过1000种第三方服务,且自部署版本具备丰富的本地调用能力,可以对本地数据库、文件等进行操作,甚至作为寄生系统为现有业务增添自动化和AI功能。
- 对大模型友好:内置图形可视化的LangChain节点,能够方便地集成各种AI模型、记忆、工具和解析器,支持BYOK(Bring Your Own Key)模式,即用户可以自备API Key来调用AI服务。
- 支持半封装模式:在低代码和代码之间实现了平衡。对于已有的节点,可以拖拽完成接入;对于没有现成节点的功能,支持通过HTTP Request接入几乎任何开放API的第三方服务。同时,其Code节点支持运行JavaScript和Python代码,非常适合与ChatGPT进行结对编程。
对于个人用户来说,在NAS(网络附加存储)上部署n8n具有多方面的优势:
- 完全掌控数据和流程:n8n是开源的,可以选择将其部署在自己的NAS服务器上,从而完全掌控您的数据和自动化流程,无需担心数据泄露或被供应商锁定。
- 部署简单:n8n的部署过程相对简单,可以通过Docker一键私有化部署,即使是不懂代码的用户也能通过可视化的界面快速上手。
- 常态化运行:NAS通常是7x24小时开机的设备,结合n8n的AI工作流能力,可以帮助个人用户完成日常工作中大量的重复性劳动,例如自动生成日报、周报等,从而释放更多时间用于其他活动。
- 随时随地访问:NAS虽然部署在家里,但是一般都通过ddns或其他方式打通了与外网的连接,可以随时随地方便的构建和调试自己AI工作流应用。
本文就以我的飞牛NAS为例来部署n8n打造人工的AI工作流中心。
一、下载n8n的镜像
在飞牛NAS的Docker镜像仓库中找到n8n的镜像,下载这个下载量和标星最多的n8nio/n8n的镜像。
下载后就可以在飞牛NAS的本地镜像库中看到这个n8nio/n8n镜像。
二、启动镜像创建n8n容器
点击本地n8nio/n8n镜像的启动按钮,弹出创建容器的配置界面,在配置界面中输入容器的名称n8n勾选开机自启动。
在进行存储位置配置之前,在NAS的文件管理中创建用于存储n8n数据文件的文件夹。
在创建容器详情的配置界面其他的配置项都可以默认,在存储位置的配置项中一定要配置将容器的存储空间映射到NAS上的文件夹,这个文件夹就是刚在NAS文件管理中建的文件夹(也就是将docker容器中的/home/node/.n8n映射到NAS中的n8n/n8n_data)。否则docker重启n8n的配置数据会丢失。
配置完成后,勾选创建后启动容器,点击“创建”。容器创建启动后就可以通过本地的5678端口访问n8n的应用了。
三、访问使用n8n
在浏览器中输入你的主机和端口就可以访问n8n,我这里是 http://192.168.0.18:5678/
第一次访问有可能会出现如下图所示的提示,n8n用到了安全的cookie,要不就要配置HTTPS,要不就在环境变量中配置N8N_SECURE_COOKIE
为false
这里,我们在容器设置里添加变量,设置N8N_SECURE_COOKIE为false
这样再次访问 http://192.168.0.18:5678/ 就可以正常访问了。第一次用n8n要设置自己的用户名和密码。
设置完用户名密码就可以使用n8n了。
我们可以导入一个已经配置好的n8n工作流实例。
可以看到正常导入,将配置修改为自己的配置就可以直接使用别人已经配置好的工作流了。
至此我们在飞牛NAS上成功部署了n8n,可以方便的随时随地构建自己的AI工作流应用了。
作者博客:http://xiejava.ishareread.com/