這篇教學將帶你一步步完成 n8n 的升級流程(適用於 Docker 部署者),確保流程順暢不漏步!
🧱 事前準備
如果你原本的部署有使用 .env
或其他 volume 資料夾,請事先確認相關設定無誤,升級不會移除這些資料,但保險起見建議備份 ~/.n8n
。
⏹️ Step 1:停止現有 n8n 容器
docker stop n8n
🗑️ Step 2:移除舊容器(不移除資料)
docker rm n8n
這個指令會刪除容器,但資料會保留在你原本綁定的 volume 中(例如 ~/.n8n
)。
📥 Step 3:拉取最新 n8n 映像檔
docker pull n8nio/n8n
這會拉下最新版的 n8n 映像檔。
🚀 Step 4:重新啟動 n8n(使用原本設定)
以下為範例指令,請依據你的實際環境修改:
docker run -d \\
--name n8n \\
-p 5678:5678 \\
-v ~/.n8n:/home/node/.n8n \\
-e N8N_BASIC_AUTH_USER=yourUsername \\
-e N8N_BASIC_AUTH_PASSWORD=yourPassword \\
n8nio/n8n
🛠️ 小提醒:
- 如果你用的是
.env
方式,可使用-env-file
加入設定。 - 若你有設定 Webhook URL、時區等環境變數,也記得補上。
✅ Step 5:確認升級成功
docker logs n8n
也可以開啟 UI 查看是否有新版本介面:
🧩 Docker Compose 範例
你也可以使用 docker-compose.yml
來簡化啟動與升級流程:
version: '3.8'
services:
n8n:
image: n8nio/n8n:latest
restart: always
ports:
- 5678:5678
environment:
- N8N_BASIC_AUTH_USER=yourUsername
- N8N_BASIC_AUTH_PASSWORD=yourPassword
volumes:
- ~/.n8n:/home/node/.n8n
啟動方式:
docker compose up -d
升級流程會變得更簡單:
docker compose pull
docker compose up -d
🕒 排程自動更新(可選)
你可以透過 crontab 安排定期自動拉取新版並重啟服務,例如:
crontab -e
加入以下排程(每週一凌晨 3 點自動更新):
0 3 * * 1 cd /path/to/your/compose-folder && docker compose pull && docker compose up -d
✅ 記得替換 /path/to/your/compose-folder
為你的實際專案資料夾路徑。
🎉 完成!你已經成功升級 n8n,還能透過 Docker Compose 與排程自動管理,未來升級更便利!