Localhost n8n 自動化教學|本機部署工作流程自動化
引言:自動化你的重複工作
你是否曾經:
- 每天手動從 Email 複製資料到試算表?
- 定時檢查某個 API 然後發通知?
- 想把不同工具的資料串接起來?
這些重複性工作都可以用 n8n 來自動化。而且最棒的是,你可以完全免費在自己電腦上運行!
本文將教你如何在 localhost 上部署 n8n,建立你的第一個自動化工作流程。

要點一-n8n 是什麼?為什麼要自己架?
讓我們先了解 n8n,以及為什麼它值得你花時間學習。
n8n 簡介
n8n(發音類似 nodemation)是一個開源的工作流程自動化工具,類似於 Zapier、Make(Integromat)。
它的特點是:
- 視覺化編輯:用拖拉方式建立工作流程
- 400+ 整合:支援常見工具和 API
- 開源免費:可以自己架設,不用付月費
- 自訂程式碼:需要時可以寫 JavaScript
- 完全掌控:資料不經過第三方
n8n vs 其他自動化工具
| 項目 | n8n(自架) | Zapier | Make |
|---|---|---|---|
| 價格 | 免費 | $29.99/月起 | $10.59/月起 |
| 任務限制 | 無限制 | 有限制 | 有限制 |
| 資料隱私 | 完全掌控 | 經過第三方 | 經過第三方 |
| 自訂程式碼 | 支援 | 有限 | 有限 |
| 部署彈性 | 自己決定 | 雲端 | 雲端 |
為什麼要自己架?
自架的優勢:
- 💰 完全免費:沒有月費、沒有任務數限制
- 🔒 資料隱私:敏感資料不經過第三方
- 🎛️ 完全控制:可以自訂任何設定
- 🧪 自由實驗:想怎麼玩就怎麼玩
適合自架的情境:
- 處理敏感資料(客戶資訊、財務資料)
- 需要大量自動化任務
- 想學習自動化和 API 整合
- 預算有限但需求多
要點二-方法一:Docker 一鍵部署 n8n
Docker 是部署 n8n 最簡單的方式。
前置需求
- 已安裝 Docker Desktop(參考 Localhost Docker 教學)
快速啟動
打開終端機,執行:
docker run -d \
--name n8n \
-p 5678:5678 \
-v n8n_data:/home/node/.n8n \
n8nio/n8n
參數說明:
-d:背景執行--name n8n:容器名稱-p 5678:5678:Port 映射-v n8n_data:/home/node/.n8n:資料持久化
存取 n8n
打開瀏覽器,輸入:
http://localhost:5678
你會看到 n8n 的設定畫面!
使用 docker-compose(推薦)
建立 docker-compose.yml:
version: '3.8'
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_BASIC_AUTH_ACTIVE=true
- N8N_BASIC_AUTH_USER=admin
- N8N_BASIC_AUTH_PASSWORD=yourpassword
- N8N_HOST=localhost
- N8N_PORT=5678
- N8N_PROTOCOL=http
- WEBHOOK_URL=http://localhost:5678/
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:
啟動:
docker-compose up -d
設定資料庫(可選)
預設 n8n 使用 SQLite,對於正式使用建議改用 PostgreSQL:
version: '3.8'
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- DB_TYPE=postgresdb
- DB_POSTGRESDB_HOST=postgres
- DB_POSTGRESDB_PORT=5432
- DB_POSTGRESDB_DATABASE=n8n
- DB_POSTGRESDB_USER=n8n
- DB_POSTGRESDB_PASSWORD=n8npassword
volumes:
- n8n_data:/home/node/.n8n
depends_on:
- postgres
postgres:
image: postgres:15
restart: always
environment:
- POSTGRES_USER=n8n
- POSTGRES_PASSWORD=n8npassword
- POSTGRES_DB=n8n
volumes:
- postgres_data:/var/lib/postgresql/data
volumes:
n8n_data:
postgres_data:

要點三-方法二:npm 安裝 n8n
如果你不想用 Docker,也可以直接用 npm 安裝。
前置需求
- Node.js 18 或更新版本
- npm
全域安裝
npm install -g n8n
啟動 n8n
n8n start
預設會在 http://localhost:5678 啟動。
設定環境變數
建立 .env 檔案或直接設定環境變數:
# 基本認證
export N8N_BASIC_AUTH_ACTIVE=true
export N8N_BASIC_AUTH_USER=admin
export N8N_BASIC_AUTH_PASSWORD=yourpassword
# 啟動
n8n start
npm vs Docker 比較
| 項目 | npm 安裝 | Docker |
|---|---|---|
| 安裝難度 | 中等 | 簡單 |
| 環境隔離 | 無 | 完全隔離 |
| 更新方式 | npm update | docker pull |
| 資源佔用 | 較低 | 較高 |
| 跨平台 | 需注意相依性 | 一致 |
建議:如果你熟悉 Docker,優先使用 Docker。否則 npm 也是可靠的選擇。
要點四-n8n 基本設定與介面導覽
成功啟動 n8n 後,讓我們熟悉介面。
首次設定
首次開啟 n8n 時,需要建立帳號:
- 輸入 Email 和密碼
- 選擇是否加入產品更新
- 完成設定
主要介面區域
1. 左側選單
- Workflows:工作流程列表
- Credentials:API 金鑰和帳號
- Executions:執行歷史記錄
- Settings:系統設定
2. 工作流程編輯器
- 節點面板:拖拉節點到畫布
- 畫布:編輯工作流程
- 右側設定:節點參數設定
重要概念
節點(Node):工作流程的基本單位,每個節點執行一個動作。
觸發器(Trigger):啟動工作流程的條件,如:
- Webhook 接收請求
- 排程定時執行
- 收到 Email
連接(Connection):節點間的資料流向。
常用節點類型
| 類型 | 用途 | 範例 |
|---|---|---|
| 觸發器 | 啟動工作流程 | Webhook, Schedule |
| 動作 | 執行操作 | HTTP Request, Send Email |
| 處理 | 資料轉換 | Set, Code, IF |
| 整合 | 第三方服務 | Google Sheets, Slack |
要點五-建立第一個工作流程
讓我們動手建立一個簡單的工作流程!
目標
建立一個工作流程:當接收到 Webhook 請求時,自動發送 Slack 通知。
Step 1:建立新工作流程
- 點擊左側「Workflows」
- 點擊「Create new workflow」
- 給工作流程命名:「Webhook to Slack」
Step 2:新增 Webhook 觸發器
- 點擊中央的「+」
- 搜尋「Webhook」
- 選擇「Webhook」節點
- 設定:
- HTTP Method:POST
- Path:/notify
點擊「Listen for Test Event」,複製產生的 URL。
Step 3:測試 Webhook
用終端機或 Postman 發送請求:
curl -X POST http://localhost:5678/webhook-test/notify \
-H "Content-Type: application/json" \
-d '{"message": "Hello from n8n!"}'
n8n 應該會收到這個請求。
Step 4:新增 Slack 節點
- 點擊 Webhook 節點右側的「+」
- 搜尋「Slack」
- 選擇「Slack」節點
- 設定 Credential(需要 Slack API Token)
- 選擇頻道和訊息內容
Step 5:啟用工作流程
- 點擊右上角的「Inactive」開關
- 確認啟用
現在,每次 Webhook 接收到請求,都會自動發送 Slack 訊息!
進階範例:定時爬資料
Schedule Trigger → HTTP Request → IF 條件判斷 → Slack 通知
這個工作流程每小時檢查某個 API,如果有新資料就發通知。

要點六-本機 n8n 的限制與解決方案
在 localhost 運行 n8n 有一些限制需要注意。
限制一:Webhook 無法從外部存取
問題:本機的 Webhook 網址(localhost:5678)外部服務無法連到。
影響:無法接收來自 GitHub、Stripe、Slack 等服務的 Webhook。
解決方案:
方法 A:使用 ngrok
ngrok http 5678
會產生一個公開網址(如 https://abc123.ngrok.io),在 n8n 設定:
export WEBHOOK_URL=https://abc123.ngrok.io/
方法 B:使用 Cloudflare Tunnel
cloudflared tunnel --url http://localhost:5678
💡 延伸閱讀:Ngrok 教學 和 Cloudflare Tunnel 教學
限制二:電腦關機就停止
問題:本機 n8n 只在電腦開機時運行。
解決方案:
- 方法 A:部署到雲端伺服器
- 方法 B:使用樹莓派或 NAS 24 小時運行
限制三:資料備份
問題:預設資料存在本機,可能遺失。
解決方案:
# 備份 n8n 資料
docker cp n8n:/home/node/.n8n ./n8n-backup
或使用 PostgreSQL 資料庫,更容易備份。
🚀 想讓 n8n 24/7 運行?
限制提醒:本機 n8n 只能在電腦開機時運行,Webhook 也無法直接接收外部請求。
VibeFix 如何幫助你?
✅ 雲端 n8n 部署:讓你的自動化 24/7 不間斷
✅ 公開 Webhook:接收任何服務的通知
✅ 資料備份:自動備份你的工作流程
✅ 效能最佳化:處理大量自動化任務
✅ SSL 憑證:安全的 HTTPS 連線
💡 為什麼選擇 VibeFix?
- 自動化專業:豐富的 n8n 部署經驗
- 持續監控:確保服務穩定運行
- 彈性方案:從小規模到企業級
新用戶優惠:n8n 雲端部署享 8 折優惠!
👉 立即點擊了解 VibeFix n8n 部署服務!
要點七-進階:讓 n8n 上線到雲端
當你準備好讓 n8n 正式上線,有幾個選項。
選項一:VPS 自架
優點:完全控制、成本可預測
步驟:
- 租用 VPS(如 DigitalOcean、Linode)
- 安裝 Docker
- 部署 n8n + 資料庫
- 設定反向代理(Nginx)
- 配置 SSL 憑證
選項二:使用 n8n Cloud
優點:免維護、快速開始
缺點:需要付費
前往 n8n Cloud 註冊。
選項三:使用 Railway / Render
優點:簡單部署、自動擴展
# Railway
railway init
railway up
上線前檢查清單
- [ ] 設定強密碼或停用基本認證
- [ ] 配置 SSL 憑證
- [ ] 設定環境變數
- [ ] 配置資料庫備份
- [ ] 測試 Webhook 可用性
FAQ
Q1:n8n 免費嗎?
自架 n8n 完全免費。n8n Cloud 雲端版本需要付費。
Q2:n8n 和 Zapier 哪個好?
看需求:需要免費/隱私/高度自訂選 n8n,需要簡單易用/不想維護選 Zapier。
Q3:本機 n8n 的 Webhook 為什麼收不到?
因為 localhost 無法從外部存取。需要使用 ngrok 或 Cloudflare Tunnel 建立公開網址。
結論:開始自動化你的工作
本文重點回顧
透過這篇教學,你學會了:
- n8n 的優勢:免費、開源、可自架
- Docker 部署:一鍵啟動 n8n
- npm 安裝:另一種部署選擇
- 介面導覽:認識工作流程編輯器
- 建立工作流程:Webhook 到 Slack 的範例
- 克服限制:使用 ngrok 接收外部 Webhook
自動化的威力
一旦你開始使用 n8n,你會發現生活中很多重複工作都可以自動化:
- 社群媒體排程發文
- 監控網站狀態
- 自動整理資料
- 串接不同工具
下一步學習建議
- 探索整合:嘗試串接不同服務
- 學習進階節點:Code、IF、Loop
- 準備上線:如何讓 Localhost 上線?5 種方法
- 參考官方文件:n8n 官方文件

參考資料
圖片描述清單
插圖 1:localhost-n8n-hero
- 用途:文章主視覺圖
- 建議尺寸:1200 x 630 px
- 描述:主視覺圖呈現 n8n 自動化概念。畫面中央是 n8n 的節點式編輯器示意圖,顯示多個節點相連(如 Webhook → 處理資料 → 發送通知)。左右兩側有各種工具 logo(Gmail、Slack、Google Sheets、Notion)用虛線連接到中央,表示整合。整體使用 n8n 的品牌橘色,風格現代科技感。
- Slug:localhost-n8n-hero
插圖 2:localhost-n8n-docker
- 用途:Docker 部署架構
- 建議尺寸:1000 x 500 px
- 描述:簡易架構圖呈現 Docker 部署方式。左側是使用者電腦,瀏覽器顯示 localhost:5678。中間是 Docker 容器區塊,包含 n8n 容器和可選的 PostgreSQL 容器。下方有 Volume 圖示表示資料持久化。使用箭頭標示 Port 映射(5678:5678)。整體風格清晰簡潔。
- Slug:localhost-n8n-docker
插圖 3:localhost-n8n-editor
- 用途:n8n 編輯器介面導覽
- 建議尺寸:1000 x 600 px
- 描述:n8n 編輯器截圖風格的教學圖。顯示一個簡單的工作流程:Webhook 節點連接到 Slack 節點。用不同顏色標註各區域:左側節點面板、中央畫布、右側設定面板。每個標註都有簡短說明。底部顯示「Active」開關的位置。整體風格清晰,適合新手理解。
- Slug:localhost-n8n-editor
插圖 4:localhost-n8n-usecases
- 用途:自動化應用場景
- 建議尺寸:1000 x 600 px
- 描述:資訊圖呈現 n8n 的自動化應用場景。中央是 n8n logo,周圍放射狀排列多個使用案例:「社群媒體排程」、「資料同步」、「通知提醒」、「報表自動化」、「客戶管理」、「網站監控」。每個案例配有簡單圖示,用虛線連接到中央。整體風格現代,展示自動化的多樣可能性。
- Slug:localhost-n8n-usecases