跳到正文
SL Blog 技术探索 · 工程实践 · AI 时代思考
返回
⚙️ n8n Docker 部署 · 6 / 9 查看系列简介 →

n8n Docker 部署(五):生产环境建议

文章目录
  1. 反向代理与 HTTPS
  2. 数据库选择
  3. 凭据加密
  4. 安全组与防火墙
  5. 备份与恢复建议

📌 本文是「n8n Docker 部署」系列第 五 篇 · 系列目录

反向代理与 HTTPS

  • 使用 Nginx/Traefik 等将外部域名指向 n8n
  • 在 n8n 配置中将 N8N_PROTOCOL 设置为 https,并将 WEBHOOK_URL 改为 https://<你的域名>/
  • 建议使用自动签发证书(如 Let’s Encrypt)并定期续期

示例 Nginx(仅供参考):

server {
    listen 80;
    server_name your.domain.com;
    return 301 https://$host$request_uri;
}
server {
    listen 443 ssl;
    server_name your.domain.com;
    ssl_certificate     /etc/letsencrypt/live/your.domain.com/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/your.domain.com/privkey.pem;

    location / {
        proxy_pass http://127.0.0.1:5678;
        proxy_set_header Host $host;
        proxy_set_header X-Real-IP $remote_addr;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
        proxy_set_header X-Forwarded-Proto https;
    }
}

数据库选择

  • 生产建议改用 PostgreSQL 以获得更好的性能与可靠性(本笔记以默认 SQLite 起步)
  • 迁移到 PostgreSQL 前,请评估数据备份与恢复方案,并参考官方文档配置环境变量

凭据加密

  • 为安全起见,建议配置 N8N_ENCRYPTION_KEY(自行生成、妥善保管)
  • 加密密钥不可泄露,避免写入代码仓库或日志

安全组与防火墙

  • 最小暴露原则:仅放行外部访问所需端口(如 443/80/5678)
  • 内部通信优先使用网桥地址(如 172.17.0.1)而非公网 IP

备份与恢复建议

  • 数据卷 ~/.n8n 定期备份(见“更新与备份.md”)
  • 执行前先验证备份可恢复性,避免单点失败

RAG 智能问答

针对本文继续提问:《n8n Docker 部署(五):生产环境建议》