自托管 n8n 的最小成功标准不只是容器显示 running,还包括编辑器能登录、凭证在重启后保留、生产 Webhook 可从外部到达。 下面是单机入门结构,未在你的服务器、反向代理或生产网络上实测;正式环境还要按官方文档配置 HTTPS、备份、更新、数据库和访问控制。
本篇验收要点:Compose 文件至少要固定镜像、端口、数据卷、时区和 N8N_ENCRYPTION_KEY,然后再执行 docker compose up -d。 编辑器能打开后,新建 Webhook 工作流,先运行 Test URL,再激活工作流并从另一台设备请求 Production URL。

创建可持久化的 Compose 配置
以下只展示核心结构。把域名、时区和密钥改成自己的值;密钥不能提交到仓库,也不能在以后随意更换,否则已有凭证可能无法解密。
services:
n8n:
image: docker.n8n.io/n8nio/n8n:stable
restart: unless-stopped
ports:
- "127.0.0.1:5678:5678"
environment:
- GENERIC_TIMEZONE=Asia/Shanghai
- TZ=Asia/Shanghai
- N8N_ENCRYPTION_KEY=${N8N_ENCRYPTION_KEY}
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
启动后先看健康与日志
在配置目录执行 docker compose up -d,再看 docker compose ps 和最近日志。端口只绑定本机,由反向代理提供 HTTPS;不要把未认证的编辑器直接暴露到公网。若页面打不开,依次检查容器状态、端口监听、代理转发和防火墙。
用 Webhook 验证真实入口
建立 Webhook → Edit Fields → Respond to Webhook 三节点流程,返回 {"ok":true}。Test URL 需要在编辑器点 Listen 后调用;Production URL 需要先激活工作流。反向代理场景还要按官方说明设置外部 Webhook URL,避免 n8n 生成内部地址。
读者下一步是先生成一条足够长且只保存在服务器密钥管理中的加密密钥,再创建持久化数据卷。
验证标准是容器重启后账号与凭证仍存在、测试 URL 只在监听时响应、生产 URL 在工作流激活后可用,并且公网入口使用 HTTPS。
常见问题
为什么重启后工作流还在,凭证却报错?
重点核对数据卷是否挂载到正确目录,以及 N8N_ENCRYPTION_KEY 是否与创建凭证时一致。
单机 Compose 适合大量任务吗?
适合先验证业务。并发、队列、外部数据库和多副本属于后续扩展,需按官方部署与扩容文档设计。
官方资料与适用边界
Ai菜鸟网。发布者:AI小管家,转载请注明出处:https://www.alyyhw.com/31116.html