N8N MACOS本地部署流程避坑指南
最近n8n很火,就想在本地部署一个,尝尝鲜,看说明n8n是开源软件,可以在本地部署,于是就尝试部署了下,大概用了1个多小时,把相关的过程记录一下:
1、基础软件包
abc@Xu-MacBook-m2-Air-deep-space-gray-24 ~ % node --version
v22.14.0
abc@Xu-MacBook-m2-Air-deep-space-gray-24 ~ % pnpm --version
10.9.0
abc@Xu-MacBook-m2-Air-deep-space-gray-24 ~ % git --version
git version 2.39.5 (Apple Git-154)
系统说要用nodejs版本为v18 ,实测 v22 也没问题
2、macos系统配置
echo 'ulimit -n 65536' >> ~/.zshrc
source ~/.zshrc
要让系统开启打开多个文件的设置,否则会报错 (防止 EMFILE: too many open files 错误)
3、安装依赖,
因为是本地下载好的包,不需要clone,因此在源码解压后的根目录执行命令即可
pnpm install
这个过程需要下很多包,需要一点时间
如果有问题贼删除了重新安装
pnpm store prune
rm -rf node_modules pnpm-lock.yaml
pnpm install
我这里有一次出错了,目录下没有node_modules 这个目录,这种情况下不要问AI原因,直接删除了重新解压,重新安装即可
4、预打包
这时正常的AI都会告诉你执行pnpm dev 就可以运行n8n了,不出意外的话会至少报2个包的错误,(如 @n8n/di、n8n-workflow)
这个过程AI也是语焉不详,并且在正常运行的过程中不会说这块,所以算是一个坑吧,AI的意思是n8n 是一个 monorepo 项目,pnpm 的工作区(workspace)功能能高效管理多个子包(如 @n8n/di、n8n-workflow)。
说人话就是需要将这些依赖先提前编译一下
pnpm run -r build
编译完成再执行 pnpm dev 就可以了
然后就是漫长的等待,还没有提示,中间我取消了两次,在执行 pnpm dev 然后就过去了,就这样。