↕️如何正确升级 n8n?

type
status
date
slug
summary
tags
category
icon
password
author
标签
第三方接入
n8n 是一款强大的自动化工具,随着功能的不断迭代,保持 n8n 版本的更新尤为重要。但如果操作不当,升级过程中可能会导致数据丢失或出现版本混淆。本文将以简单易懂的方式,详细讲解 n8n 正确升级的三个关键要点,帮助你安全无忧地完成升级。

1. 升级前必须做好目录的永久化存储

n8n 的所有工作流、凭据等数据,默认存储在容器的本地目录中。如果你没有将这些目录映射到主机(即没有做“持久化存储”),一旦升级或重建容器,所有数据都会消失,无法找回。因此,升级前务必确认已经将 n8n 的数据目录(如 ~/.n8n)做了持久化挂载。
如何实现持久化存储?
如果你按照本教程的方法进行部署,那意味着你已经完成了持久化存储,也就是你可以在宿主机里看到你 n8n 运行时产生的各种数据。
如果你是自己使用 Docker 命令行部署的 n8n,那么请确认你在部署时使用了类似如下的 -v 参数将 n8n 的数据目录映射到了宿主机:
这样,无论容器如何重启或升级,主机上的 ~/.n8n 目录都会保存你的所有数据。请务必在升级前检查该目录是否已挂载,并定期做好备份。
如果,你在最初部署的时候,没有进行持久化存储,你需要先将数据备份出来再升级,否则你的所有数据都会消失。具体的方法是:
1.备份容器内数据:使用 Docker 的 cp 命令将容器内的数据复制到宿主机:
这将把容器内的 /home/node/.n8n 目录复制到宿主机当前目录下的 n8n-backup 文件夹中。
2.检查备份是否完整
确认备份中包含 .n8n 目录下的所有重要文件,如 database.sqlite、workflows 等文件夹。
3.升级后恢复数据:在新容器启动时,使用 -v 参数将备份的数据挂载到容器中:
这种方法适用于初次部署时没有做持久化存储的情况。完成备份后,你就可以安全地升级 n8n,并将备份的数据恢复到新容器中。

2. 如何用 Docker 一键升级 n8n

如果你使用本教程的方法进行部署,那么你的升级是真正的“一键”。
你只需要在 1Panel 中选择【容器】,找到 n8n 对应的容器,在操作一列中选择【更多】>【升级】,在弹出的界面中勾选【强制拉取镜像】,然后点击确认即可:
notion image
如果你使用的是 docker 命令行部署的 n8n,可以准许以下流程进行升级:
  1. 停止当前 n8n 容器(如有运行):
    1. 拉取最新版镜像
      1. 使用持久化存储目录重新启动 n8n
        如此操作即可实现 n8n 的“无缝一键升级”,所有数据和配置都不会丢失。如果你用的是 Docker Compose,同样只需更新 image 字段并执行 docker-compose pull && docker-compose up -d 即可完成升级。

        3. n8n 版本语义控制解释:Latest 与 Next 的区别

        升级 n8n 时,很多人会疑惑:为什么我拉取了最新版(latest),但官网却有更高版本(如 next)?这涉及到 n8n 镜像的版本语义控制。
        • latest 标签:代表当前官方认定为“稳定版”的最新版本,适合生产环境,经过充分测试。
        • next 标签:代表即将发布的新版本(测试版、预发布版),包含最新功能和修复,但可能存在不稳定因素,适合开发者或尝鲜用户。
        因此,正常升级建议使用 latest,保证稳定性。如果你希望体验最新功能,可以指定 next 标签:
        但需注意,next 版本可能会有变动或不兼容风险。生产环境建议始终使用 latest,这样即使不是“绝对最新版”,也能确保安全可靠。
        关于 n8n 的版本更新,可以查看这里

        总结

        升级 n8n 的正确姿势,首要是做好数据目录的持久化存储,避免因升级导致数据丢失。其次,利用 Docker 的一键命令可以轻松拉取和部署新版。最后,理解 n8n 的版本标签含义,根据实际需求选择合适的版本进行升级。掌握这三点,你就能安全、稳定地享受 n8n 持续带来的新功能和优化体验。
        广告
        上一篇
        为什么我的定时 Trigger 和 RSS 更新 Trigger 无法正常触发?
        下一篇
        忘记密码了怎么办?
        Loading...
        文章列表
        一个中文 n8n 学习社区
        掌握你的第一个魔法
        现代魔法编程思想
        n8n 使用教程
        n8n 实战案例
        杂项