n8n 是一个开源的可视化工作流自动化工具。
n8n 可以通过 docker 进行本地部署。也可以通过命令行导出和导入工作流(workflow)、凭证(crendential)。
该仓库封装了适配 CNB 云原生开发特性的启动脚本 start.sh。流程如下:
该仓库远程开发流水线读取 env.yml 文件作为环境变量。
为免去启动 n8n 后需要手动注册 owner 用户,读取 env.yml 文件中的 OWNER_INIT_EMAIL 和 OWNER_INIT_PASSWORD 作为初始化 owner 用户的邮箱和密码。
为了避免在导出凭证再导入时,凭证无效,需要固定环境变量 N8N_ENCRYPTION_KEY 的值,同样配置在 env.yml 文件中。
准备一个私有的空仓库启动远程开发 (ps. 不要fork,因为fork仓库无法转成私有仓库,用户拿到 crendential,可用 N8N_ENCRYPTION_KEY 解密)
执行命令,复制项目 cnb-init-from <当前仓库页面地址>
修改.env文件,配置 初始化的 owner 邮箱、密码和 N8N_ENCRYPTION_KEY。
点击页面"云原生开发"按钮
云原生开发环境启动后,在终端执行命令 bin/start.sh(也可打开 .cnb.yml 相关stage注释,自动启动)
待 n8n 启动后,可在日志里看到如下信息:
✅ 初始成功,请复制以下 email 和 paasword 用于页面登录 ✅ website: https://0w9db3wjqw-5678.cnb.run ✅ email: xxx ✅ password: xxx
打开 website,使用 email 和 password(同上面配置的 OWNER_INIT_EMAIL 和 OWNER_INIT_PASSWORD) 登录即可。
结束时可手动执行 bin/save.sh 保存导出 workflows/credentials 并提交到仓库,也可等环境自动销毁时自动导出和保存。