n8n 自架與 Cloudflare Tunnel 設定教學

n8n 自架與 Cloudflare Tunnel 架設教學

本教學將引導你從 0 開始:安裝 Docker、部署 n8n,並透過 Cloudflare Tunnel 架設 HTTPS 公網連線。


📦 安裝 Docker 與 Docker Compose(以 Ubuntu 為例)

首先你要有一台VPS,在其中執行:

# 更新系統套件
sudo apt update && sudo apt upgrade -y

# 安裝 Docker
sudo apt install docker.io -y

# 啟動 Docker 並設為開機自動啟動
sudo systemctl start docker
sudo systemctl enable docker

# 安裝 Docker Compose
sudo apt install docker-compose -y

# 將當前使用者加入 docker 群組(避免每次都要 sudo)
sudo usermod -aG docker $USER

# 登出再登入一次,讓設定生效
exit

🛠️ 建立 n8n Docker Compose 設定

在主機中建立一個資料夾:

mkdir ~/n8n && cd ~/n8n

建立 docker-compose.yml 檔案:

version: "3"

services:
  n8n:
    image: n8nio/n8n
    restart: always
    ports:
      - "5678:5678"
    environment:
      - GENERIC_TIMEZONE=Asia/Taipei
      - N8N_BASE_URL=https://n8n.domain.ai
      - WEBHOOK_TUNNEL_URL=https://n8n.domain.ai
    volumes:
      - ./n8n_data:/home/node/.n8n

volumes:
  n8n_data:

啟動 n8n:

docker-compose up -d

🌐 安裝與設定 Cloudflare Tunnel

步驟 1:安裝 cloudflared

wget https://github.com/cloudflare/cloudflared/releases/latest/download/cloudflared-linux-amd64.deb
sudo dpkg -i cloudflared-linux-amd64.deb

步驟 2:登入 Cloudflare

cloudflared tunnel login

此指令會跳轉到瀏覽器授權,完成後會在 ~/.cloudflared 建立憑證檔。

步驟 3:建立 Tunnel 並記下 UUID

cloudflared tunnel create n8n-tunnel

步驟 4:建立 config.yml

nano ~/.cloudflared/config.yml

填入以下內容(請根據實際網域與 UUID 修改):

tunnel: <UUID-OF-YOUR-TUNNEL>
credentials-file: /home/YOUR_USER/.cloudflared/<UUID-OF-YOUR-TUNNEL>.json

ingress:
  - hostname: n8n.domain.ai
    service: http://localhost:5678
  - service: http_status:404

步驟 5:將 DNS 指向 tunnel

cloudflared tunnel route dns n8n-tunnel n8n.domain.ai

步驟 6:啟動 tunnel

cloudflared tunnel run n8n-tunnel

(選用)設為 systemd 開機啟動服務:

sudo cloudflared service install
sudo systemctl enable cloudflared
sudo systemctl start cloudflared

✅ 測試

開啟瀏覽器造訪:

https://n8n.domain.ai

你應該會看到 n8n 的登入頁面。


發佈留言

發佈留言必須填寫的電子郵件地址不會公開。 必填欄位標示為 *


Previous Post

淺談Minecraft盤靈古域伺服器架設技術

Next Post

使用 Docker 升級 n8n 全攻略

Related Posts