n8n 自托管部署助手
在 Linux 服务器上通过 Docker、Caddy 和自动 HTTPS 部署生产级自托管 n8n。
证据显示其要求目标机生成新密钥、将.env设为600、避免提交密钥、隔离内部端口、执行DNS/端口预检并提醒备份与首个所有者注册,降低了明显风险。扣11分:没有在SSH、Docker安装、修改防火墙和启动服务前规定明确的最终用户确认;部署需要对远程主机执行高影响操作;回滚仅部分安全;init-data.sh直接插入环境变量到SQL,缺少稳健的转义与校验;来源归因虽有官方文档链接,但未提供可核验的固定来源证据。
证据显示流程顺序、模式分支、健康检查、TLS重试和异常提示较完整。扣4分:本次静态材料未提供可执行复现;SKILL.md引用的Caddyfile、.env示例及部分参考文件未包含在材料中;Docker安装、权限、防火墙、DNS传播和启动失败缺少足够的分支诊断;部分命令和版本假设未在目标路径内自洽验证。因此不超过静态上限10分。
证据显示目标用户、Linux/SSH/Docker环境、单实例与队列模式、触发语义及不适用范围均说明清楚,并收集域名、邮箱、时区等输入。扣6分:对非Debian/Ubuntu主机、已有服务、非Docker部署、无sudo权限、复杂网络或已有n8n实例的边界不足;核心流程依赖Docker镜像、Let's Encrypt、DNS和海外文档/网络服务,未说明中国大陆可达性和替代路径;未提供中文交互支持说明。
证据显示有SKILL.md编排层、分模式参考文件、资产目录、README结构、MIT许可证、README版本1.1.0和官方文档链接,信息架构较清晰。扣7分:选定技能自身没有明确维护责任人、发布/更新流程或变更日志;版本信息位于仓库README而非技能本体;材料缺少其引用的部分模板和参考文件;安装、FAQ、故障排查与兼容性说明仍依赖未展示内容;来源身份在题设中未验证。
证据显示其覆盖从预检、部署、TLS验证到更新、备份、恢复和加固的完整目标,并提供可直接参考的Compose模板和命令。扣10分:静态阅读无法证明命令和模板在实际版本中可运行;缺少Caddyfile、env示例等关键资产,无法确认端到端产物可直接使用;队列模式的容量与恢复复杂度、外部依赖和迁移风险仍需人工复核;因此只能给出有限的静态效用分,不超过7分。
证据显示文档引用多个官方n8n文档路径,并在模板与操作说明中提供健康检查、日志和版本检查命令,具备一定审计线索。扣6分:没有执行结果、CI工作流、提交测试套件或第三方复现记录;关键资产未全部提供,无法静态交叉核验;README中的测试和生产测试表述不能替代本技能路径的可重复证据;因此不超过静态上限5分。
- 执行前必须获得用户对远程SSH操作、Docker安装、防火墙变更、公开域名/TLS和服务启动的明确确认,并核对目标主机与数据目录。
- 材料未包含SKILL.md引用的Caddyfile和.env示例,不能仅凭本次静态证据确认端到端部署可复现。
- 队列模式恢复依赖数据库备份与原始N8N_ENCRYPTION_KEY;升级后的数据库迁移可能使降级不可行。
- 部署依赖Docker镜像、DNS、Let's Encrypt和外部文档服务;中国大陆网络可达性与替代方案未被说明。
- 不要直接采用init-data.sh处理不受信任的数据库用户名或密码;应先审查SQL转义和注入风险。
这个 Skill 能做什么,适合哪些场景?
这个技能面向希望在自己的 VPS 或 Linux 服务器上运行 n8n 的用户。它通过 SSH 将全新的 Ubuntu/Debian 类 Linux 虚拟机部署为带 HTTPS 的 Docker Compose n8n 实例,并支持单实例模式和队列模式。流程涵盖 DNS 与端口预检、Docker 安装、模板部署、密钥生成、启动、TLS 验证以及更新、备份、恢复和加固。它不用于 n8n Cloud,也不用于构建 n8n 工作流。
通过 SSH 检查目标系统、DNS、公网 IP、80/443 端口和防火墙;必要时安装 Docker Engine 与 Compose 插件;将 Compose、Caddyfile、环境变量示例和队列初始化脚本写入服务器;在目标服务器本地生成 n8n 加密密钥及队列模式所需的数据库密钥;配置单实例 SQLite 或队列模式的 Redis、Postgres、主进程和 workers;启动服务并检查容器状态、n8n healthz、Caddy 证书和公开 HTTPS 可达性;提供加密密钥交接及更新、备份、恢复和安全加固提示。
- 个人或小团队希望在 Hetzner、DigitalOcean、AWS EC2 或裸机上运行轻量 n8n,选择单实例模式并使用 SQLite。
- 预计有较高执行量、长时间运行任务或需要横向扩展的团队,在 Linux 服务器上部署 Redis、Postgres 和多个 n8n workers 的队列模式。
- 需要为自托管 n8n 配置域名、Caddy 反向代理和 Let's Encrypt 自动 HTTPS 的运维人员。
- 已有 n8n 实例、需要规划更新、备份、恢复或安全加固流程的管理员。
这个 Skill 有哪些优点和局限?
- 覆盖从全新 Linux VM 到 HTTPS n8n 实例的端到端流程。
- 同时提供单实例 SQLite 和 Redis/Postgres/workers 队列模式。
- 明确要求在目标服务器生成新密钥,并避免公开 n8n、Postgres 和 Redis 端口。
- 包含 DNS、云防火墙、TLS、健康检查以及更新、备份和恢复注意事项。
- 要求用户拥有 root 或 sudo SSH 访问权、可控域名以及公网可访问的 80/443 端口。
- 目标环境限定为新鲜的 Ubuntu/Debian 类 Linux VM;源材料没有说明 Windows、macOS 或其他发行版的支持。
- 队列模式需要更高资源,源材料给出的粗略内存下限约为 4 GB,且每个 worker 约需 1–2 GB。
- 技能明确不覆盖 n8n Cloud 或工作流构建;源材料也没有提供独立于 Claude Code 的详细安装流程。
如何安装这个 Skill?
该技能随 czlonkowski/n8n-skills 仓库安装,而不是在源材料中单独提供安装命令。Claude Code 推荐使用 /plugin install czlonkowski/n8n-skills;手动安装可执行 git clone https://github.com/czlonkowski/n8n-skills.git,再执行 cp -r n8n-skills/skills/* ~/.claude/skills/ 并重新加载 Claude Code。使用前还需要按仓库说明配置 n8n-mcp MCP server;该部署技能本身的 SKILL.md 没有声明会调用 MCP。
如何使用这个 Skill?
向已加载该技能的助手提出明确请求,例如:Deploy n8n on my server with Docker Compose、Set up self-hosted n8n in queue mode 或 Back up and harden my n8n instance。助手会先要求选择 single/regular 或 queue 模式,再收集 SSH 目标、域名、Let's Encrypt 邮箱和时区,然后按预检、部署、启动和 HTTPS 验证流程执行。
这个 Skill 与同类方案有什么区别?
与 n8n Cloud 相比,它针对用户自行管理的 Docker n8n 服务器;与仓库中的工作流构建技能相比,它专注于部署、运维和安全,而不是创建工作流。