若你是在 Windows 上用 npm install -g n8n 安裝 n8n,並希望將自己做好的 workflow(工作流程)及 credentials(憑證)備份出來,並在另一台設備上還原,以下是詳細步驟:
備份 workflow 及 credentials
1. 使用 n8n CLI 指令備份
n8n 有內建 CLI 指令可以匯出 workflow 及 credentials,雖然你是在 Windows 安裝,但這些指令在 Windows 的終端機(如 PowerShell、CMD)也能執行,只是路徑和目錄習慣會與 Linux 不同。
備份 workflow
n8n export:workflow --all --separate --output=I:\n8n_backup\workflows
這會把所有 workflow 一一匯出個別JSON 檔案,放在你指定的資料夾內。
或
n8n export:workflow --all --output=I:\n8n_backup\workflows\workflow.json
這會把所有 workflow 匯出成一個JSON 檔案,放在你指定的資料夾內。
備份 credentials
n8n export:credentials --all --decrypted --separate --output=I:\n8n_backup\credentials
這樣會把所有 credentials一一 匯出個別 JSON 檔案,且內容是解密狀態(明碼),方便你在新環境直接匯入。
n8n export:credentials --all --decrypted --output=I:\n8n_backup\credentials\credentials.json
這樣會把所有 credentials 匯出成一個 JSON 檔案,且內容是解密狀態(明碼),方便你在新環境直接匯入。
注意:--decrypted 參數會讓憑證以明碼方式儲存,請妥善保管備份檔案,避免外洩。
2. 手動備份(UI 操作)
你也可以在 n8n 網頁介面中,點選右上角三個點,選擇「Download」下載單一 workflow 的 JSON 檔案。但這種方式只能一次下載一個 workflow,且無法批次匯出 credentials。
將備份資料帶到另一台設備
將備份好的 JSON 檔案(workflows 及 credentials)複製到新設備,建議用隨身碟、雲端硬碟或網路傳輸等方式。
在新設備上還原
1. 安裝 n8n
在新設備上同樣用 npm install -g n8n 安裝 n8n。
2. 匯入 workflow 及 credentials
匯入 workflow
n8n import:workflow --input=C:\path\to\backup\workflows\workflow1.json
依序匯入每個 workflow JSON 檔案。
匯入 credentials
n8n import:credentials --input=C:\path\to\backup\credentials\credential1.json
依序匯入每個 credential JSON 檔案。
注意:如果 credentials 當初不是以 --decrypted 方式匯出,則匯入時可能會有解密金鑰不符的問題,導致無法正確還原。
補充說明
批次備份與還原:若有多個 workflow 或 credentials,建議寫批次腳本自動處理。
資安提醒:credentials 以明碼方式備份時,請務必妥善保管備份檔案。
資料庫備份:若你是用資料庫(如 PostgreSQL)儲存 n8n 資料,也可以考慮直接備份資料庫,但需搭配加密金鑰才能還原。
雲端自動備份:可搭配 FTP、AWS S3、Google Drive 等節點,自動將備份檔案上傳到雲端。
功能 | 指令範例 |
---|---|
匯出 workflow | n8n export:workflow --all --output=I:\n8n_backup\workflowsall\workflow.json |
匯出 credentials | n8n export:credentials --all --decrypted --output=I:\n8n_backup\credentials\credentials.json |
匯入 workflow | n8n import:workflow --input=C:\backup\workflows\workflow1.json |
匯入 credentials | n8n import:credentials --input=C:\backup\credentials\credential1.json |