n8n คืออะไร และติดตั้งบน VPS ด้วย Docker Compose อย่างไร

3 อ่านขั้นต่ำแล้ว
Tropic
n8n คืออะไร และติดตั้งบน VPS ด้วย Docker Compose อย่างไร

Language: th

H1: n8n บน VPS: แพลตฟอร์มอัตโนมัติของคุณเองที่ลดงานซ้ำซ้อน

เมื่อมีคำขอเข้ามาจากเว็บไซต์ n8n สามารถตรวจสอบข้อมูล ค้นหารายการซ้ำ สร้างดีล เตรียมร่างคำตอบด้วย AI และแจ้งผู้จัดการใน Telegram ได้ คนจึงเข้ามาตัดสินใจเฉพาะจุดที่จำเป็น ไม่ต้องคอยย้ายข้อมูลไปมาระหว่างแท็บเบราว์เซอร์

บทความนี้อธิบายการทำงานของ n8n และวิธีติดตั้งบน VPS ด้วย Docker Compose, PostgreSQL, HTTPS และการประมวลผลโค้ดแบบแยกส่วน

n8n ในเจ็ดขั้นตอน

แผนการเริ่มต้นแบบย่อมีดังนี้:

  1. สร้าง VPS และชี้ซับโดเมนไปยังเซิร์ฟเวอร์ เช่น n8n.example.com
  2. ติดตั้ง Docker และ Docker Compose
  3. รัน n8n พร้อม PostgreSQL, external task runner และ Caddy
  4. เปิดอินเทอร์เฟซผ่าน HTTPS แล้วสร้างบัญชีเจ้าของ
  5. เชื่อมต่อ Telegram, CRM, อีเมล หรือ API ภายนอก
  6. ตั้งค่าการจัดการข้อผิดพลาดและระยะเวลาเก็บข้อมูลการทำงาน
  7. ทำให้การสำรองฐานข้อมูล ข้อมูลแอป และคีย์เข้ารหัสเป็นแบบอัตโนมัติ

สำหรับการติดตั้งขนาดเล็กที่ใช้งานจริง การเริ่มด้วย 2 vCPU และ RAM 4 GB ถือว่าเหมาะสม RAM 2 GB มักเพียงพอสำหรับการทดสอบ แต่ PostgreSQL, Docker และกระบวนการที่ทำงานพร้อมกันจะใช้พื้นที่สำรองที่เหลืออย่างรวดเร็ว

n8n คืออะไรและทำงานอย่างไร

n8n คือแพลตฟอร์มสำหรับทำให้เวิร์กโฟลว์เป็นอัตโนมัติ เวิร์กโฟลว์ประกอบด้วยโหนดต่าง ๆ: โหนดแรกเริ่มกระบวนการ โหนดถัดไปรับและแปลงข้อมูล และโหนดสุดท้ายทำงานที่ต้องการ

เวิร์กโฟลว์แบบง่ายอาจเป็นดังนี้:

Webhook → data validation → CRM → Telegram → website response

สามารถเริ่มสายงานด้วย webhook, ตารางเวลา, อีเมล, ข้อความ หรือเหตุการณ์จากบริการภายนอก ระหว่างโหนดมีเงื่อนไข ลูป ตัวกรอง การรอ และการจัดการข้อผิดพลาดให้ใช้

จุดเด่นอย่างหนึ่งของ n8n คือระบบอัตโนมัติไม่ได้จำกัดอยู่แค่การเชื่อมต่อที่เตรียมไว้ คุณเรียกบริการใดก็ได้ผ่าน API ด้วย HTTP Request ส่วนตรรกะเฉพาะสามารถเขียนใน Code node ด้วย JavaScript หรือ Python ทำให้ n8n อยู่กึ่งกลางระหว่างเครื่องมือ no-code แบบง่ายกับโค้ดฝั่งเซิร์ฟเวอร์ที่เขียนเอง

ทำไม n8n จึงเป็นมากกว่าการส่งต่อข้อมูล

n8n เหมาะเมื่อกระบวนการหนึ่งครอบคลุมหลายระบบและต้องมีการตัดสินใจ:

form → validation → duplicate search → AI assessment → manager approval → CRM

คุณสามารถให้คนเข้ามาเฉพาะจุดควบคุมได้ เช่น AI เตรียมคำตอบ แต่ระบบจะส่งข้อความให้ลูกค้าหลังพนักงานอนุมัติเท่านั้น

กรณีใช้งานที่พบบ่อย:

  • ฝ่ายขายและฝ่ายสนับสนุน: รวบรวมคำขอ จัดสรรลีด และสร้างดีล
  • คอนเทนต์และ AI: ร่างเนื้อหา จัดประเภทคำถาม และเผยแพร่หลังอนุมัติ
  • DevOps: แจ้งเตือนระบบล่ม รับ Git webhook และตรวจสอบ API
  • งานภายในองค์กร: ซิงค์สเปรดชีต อีเมล ปฏิทิน และระบบองค์กร

การติดตั้งแบบโฮสต์เองช่วยให้คุณควบคุมกระบวนการและฐานข้อมูลได้ แต่ไม่ได้ทำให้บริการภายนอกกลายเป็นบริการภายใน ข้อมูลที่ส่งไป Telegram, CRM หรือโมเดล AI บนคลาวด์จะออกจาก VPS

n8n Cloud หรือเซิร์ฟเวอร์ของคุณเอง

พารามิเตอร์n8n Cloudn8n บน VPS
การเริ่มใช้งานไม่ต้องตั้งค่าเซิร์ฟเวอร์ต้องมีโดเมน Docker และ HTTPS
การอัปเดตn8n จัดการให้เจ้าของจัดการเอง
ฐานข้อมูลและไฟล์อยู่ในโครงสร้างพื้นฐานของบริการอยู่บนเซิร์ฟเวอร์ที่เลือก
การขยายระบบตามแพ็กเกจคลาวด์กำหนดค่าได้อย่างอิสระ
ความรับผิดชอบดูแลระบบน้อยกว่าเจ้าของต้องรับผิดชอบแบ็กอัป ความปลอดภัย และการเฝ้าระวัง
เหมาะกับเริ่มต้นเร็วโดยไม่ต้องทำ DevOpsต้องการควบคุม ปรับแต่ง และให้กระบวนการทำงานตลอดเวลา

Community Edition สามารถโฮสต์เองได้ฟรีและใช้กับงานส่วนตัวหรืองานภายในธุรกิจ อย่างไรก็ตาม n8n ไม่ได้เผยแพร่ภายใต้ใบอนุญาตโอเพนซอร์สแบบดั้งเดิม แต่ใช้ Sustainable Use License แบบ fair-code ใบอนุญาตนี้อนุญาตให้ใช้งานภายในและแก้ไขได้ แต่ไม่อนุญาตให้นำ n8n ไปติดตั้ง เพิ่มโลโก้ของตนเอง แล้วขายการเข้าถึงเป็น SaaS แยกต่างหาก หากจะทำผลิตภัณฑ์ลักษณะนั้นต้องตรวจสอบเงื่อนไขใบอนุญาตเพิ่มเติม

ความต้องการของเซิร์ฟเวอร์สำหรับ n8n

ภาระงานขึ้นอยู่กับปริมาณข้อมูล จำนวนงานพร้อมกัน และชนิดของการดำเนินการ ไฟล์ รายการขนาดยาว Code node และเวิร์กโฟลว์ AI ต้องใช้หน่วยความจำมากกว่าการส่ง JSON ขนาดเล็กระหว่าง API

สถานการณ์การกำหนดค่าเริ่มต้น
ทดสอบและเวิร์กโฟลว์ข้อความส่วนตัว1 vCPU, RAM 2 GB, NVMe 20 GB
การติดตั้งใช้งานจริงขนาดเล็ก2 vCPU, RAM 4 GB, NVMe 25–40 GB
งานพร้อมกัน, AI หรือไฟล์4 vCPU, RAM 8 GB ขึ้นไป
worker หลายตัวในโหมดคิวปรับขนาดตามปริมาณการทำงาน

SQLite เหมาะกับการเรียนรู้และการติดตั้งอินสแตนซ์เดียวขนาดเล็ก ส่วน PostgreSQL สะดวกกว่าสำหรับใช้งานจริง: สำรองข้อมูลง่ายกว่า และภายหลังย้ายไปโหมดคิวได้ง่ายกว่า

วิธีติดตั้ง n8n บน VPS

ตัวอย่างนี้ใช้ Ubuntu 24.04, PostgreSQL, Caddy และ external task runner ให้แทนที่ n8n.example.com และเขตเวลาด้วยค่าของคุณเอง

1. ตั้งค่า DNS และเตรียมเซิร์ฟเวอร์

สร้างระเบียน DNS A ให้ชี้ไปยังที่อยู่ IPv4 ของ VPS แล้วเชื่อมต่อผ่าน SSH:

ssh root@SERVER_IP
apt update && apt upgrade -y
apt install -y ca-certificates curl ufw openssl

ติดตั้ง Docker Engine และปลั๊กอิน Compose จากรีโพซิทอรีทางการ:

install -m 0755 -d /etc/apt/keyrings
curl -fsSL https://download.docker.com/linux/ubuntu/gpg \
  -o /etc/apt/keyrings/docker.asc
chmod a+r /etc/apt/keyrings/docker.asc

cat > /etc/apt/sources.list.d/docker.sources <<EOF
Types: deb
URIs: https://download.docker.com/linux/ubuntu
Suites: $(. /etc/os-release && echo "${UBUNTU_CODENAME:-$VERSION_CODENAME}")
Components: stable
Architectures: $(dpkg --print-architecture)
Signed-By: /etc/apt/keyrings/docker.asc
EOF

apt update
apt install -y docker-ce docker-ce-cli containerd.io \
  docker-buildx-plugin docker-compose-plugin
docker compose version

อนุญาตเฉพาะ SSH, HTTP และ HTTPS:

ufw allow OpenSSH
ufw allow 80/tcp
ufw allow 443/tcp
ufw enable

อย่าปิดเซสชัน SSH ปัจจุบันจนกว่าจะยืนยันได้ว่าการเชื่อมต่อใหม่ใช้งานได้

2. สร้างตัวแปรสภาพแวดล้อม

เตรียมไดเรกทอรี:

mkdir -p /opt/n8n
cd /opt/n8n

สร้าง .env คำสั่งต่อไปนี้จะสร้างซีเคร็ตสุ่มแยกกันทันทีสำหรับ PostgreSQL การเข้ารหัส n8n และ task runner:

cat > .env <<EOF
N8N_VERSION=stable
N8N_HOST=n8n.example.com
GENERIC_TIMEZONE=Europe/Berlin

POSTGRES_DB=n8n
POSTGRES_USER=n8n
POSTGRES_PASSWORD=$(openssl rand -hex 32)

N8N_ENCRYPTION_KEY=$(openssl rand -hex 32)
RUNNERS_AUTH_TOKEN=$(openssl rand -hex 32)
EOF

chmod 600 .env

แท็ก stable สะดวกสำหรับการเปิดใช้งานครั้งแรก หลังตรวจสอบการติดตั้งแล้ว ควรระบุเวอร์ชัน n8n แบบตายตัว เพื่อไม่ให้การอัปเดตอิมเมจครั้งถัดไปเกิดขึ้นโดยไม่คาดคิด

ห้ามทำ N8N_ENCRYPTION_KEY หาย n8n ใช้คีย์นี้เข้ารหัสรหัสผ่าน โทเค็น และข้อมูลรับรองอื่นที่จัดเก็บไว้ หากกู้คืนเฉพาะ PostgreSQL โดยไม่มีคีย์ รายการจะยังอยู่ในฐานข้อมูล แต่ n8n จะอ่านข้อมูลเหล่านั้นไม่ได้

3. สร้างไฟล์ Docker Compose

สร้าง compose.yaml:

services:
  postgres:
    image: postgres:18-alpine
    restart: unless-stopped
    environment:
      POSTGRES_DB: ${POSTGRES_DB}
      POSTGRES_USER: ${POSTGRES_USER}
      POSTGRES_PASSWORD: ${POSTGRES_PASSWORD}
      PGDATA: /var/lib/postgresql/data
    volumes:
      - postgres_data:/var/lib/postgresql/data
    healthcheck:
      test: ["CMD-SHELL", "pg_isready -U $${POSTGRES_USER} -d $${POSTGRES_DB}"]
      interval: 5s
      timeout: 5s
      retries: 10

  n8n:
    image: docker.n8n.io/n8nio/n8n:${N8N_VERSION}
    restart: unless-stopped
    environment:
      DB_TYPE: postgresdb
      DB_POSTGRESDB_HOST: postgres
      DB_POSTGRESDB_PORT: "5432"
      DB_POSTGRESDB_DATABASE: ${POSTGRES_DB}
      DB_POSTGRESDB_USER: ${POSTGRES_USER}
      DB_POSTGRESDB_PASSWORD: ${POSTGRES_PASSWORD}

      N8N_HOST: ${N8N_HOST}
      N8N_PORT: "5678"
      N8N_PROTOCOL: https
      N8N_EDITOR_BASE_URL: https://${N8N_HOST}
      N8N_WEBHOOK_URL: https://${N8N_HOST}/
      N8N_PROXY_HOPS: "1"
      GENERIC_TIMEZONE: ${GENERIC_TIMEZONE}
      TZ: ${GENERIC_TIMEZONE}

      N8N_ENCRYPTION_KEY: ${N8N_ENCRYPTION_KEY}
      N8N_ENFORCE_SETTINGS_FILE_PERMISSIONS: "true"
      N8N_BLOCK_ENV_ACCESS_IN_NODE: "true"

      N8N_RUNNERS_MODE: external
      N8N_RUNNERS_AUTH_TOKEN: ${RUNNERS_AUTH_TOKEN}
      N8N_RUNNERS_BROKER_LISTEN_ADDRESS: 0.0.0.0

      EXECUTIONS_DATA_PRUNE: "true"
      EXECUTIONS_DATA_MAX_AGE: "168"
      EXECUTIONS_DATA_PRUNE_MAX_COUNT: "10000"
    volumes:
      - n8n_data:/home/node/.n8n
    expose:
      - "5678"
    depends_on:
      postgres:
        condition: service_healthy

  n8n-runner:
    image: n8nio/runners:${N8N_VERSION}
    restart: unless-stopped
    environment:
      N8N_RUNNERS_AUTH_TOKEN: ${RUNNERS_AUTH_TOKEN}
      N8N_RUNNERS_TASK_BROKER_URI: http://n8n:5679
    depends_on:
      - n8n

  caddy:
    image: caddy:2-alpine
    restart: unless-stopped
    environment:
      N8N_HOST: ${N8N_HOST}
    ports:
      - "80:80"
      - "443:443"
    volumes:
      - ./Caddyfile:/etc/caddy/Caddyfile:ro
      - caddy_data:/data
      - caddy_config:/config
    depends_on:
      - n8n

volumes:
  postgres_data:
    name: n8n_postgres_data
  n8n_data:
    name: n8n_data
  caddy_data:
    name: n8n_caddy_data
  caddy_config:
    name: n8n_caddy_config

external task runner จะรันโค้ดแยกจากกระบวนการหลักของ n8n วิธีนี้ปลอดภัยกว่า internal mode และลดโอกาสที่ข้อผิดพลาดใน Code node จะกระทบตัวแก้ไขกับการประมวลผล webhook

4. เปิดใช้ HTTPS

สร้าง Caddyfile:

{$N8N_HOST} {
    reverse_proxy n8n:5678
}

Caddy จะขอใบรับรอง TLS โดยอัตโนมัติ หาก DNS ชี้ไปยัง VPS แล้วและพอร์ต 80 กับ 443 เข้าถึงได้ พอร์ตภายใน 5678 จะไม่ถูกเปิดสู่เครือข่ายอินเทอร์เน็ต: ภายนอกเข้าถึงได้เฉพาะพอร์ต 80 และ 443 ส่วน Caddy เข้าถึง n8n ผ่านเครือข่าย Docker

ตัวแปร N8N_WEBHOOK_URL และ N8N_PROXY_HOPS จำเป็นเพื่อให้ตัวแก้ไขสร้างที่อยู่ webhook สาธารณะที่ถูกต้อง และเชื่อถือเฮดเดอร์จาก reverse proxy หนึ่งตัว

5. เริ่ม n8n

ตรวจสอบการกำหนดค่าสุดท้ายแล้วเริ่มคอนเทนเนอร์:

docker compose config
docker compose up -d
docker compose ps
docker compose logs --tail=100 n8n caddy

เปิด:

https://n8n.example.com

สร้างบัญชีเจ้าของ อย่าแชร์รหัสผ่านกับเพื่อนร่วมงาน หากทำงานเป็นทีมให้ใช้บัญชีแยกและมอบสิทธิ์เท่าที่จำเป็นแก่แต่ละคน

เวิร์กโฟลว์แรกที่ใช้งานได้จริง

การทดสอบที่ดีคือการประมวลผลคำขอจากเว็บไซต์:

  1. เพิ่มโหนด Webhook ด้วยเมธอด POST
  2. ใช้ Edit Fields เพื่อเก็บเฉพาะชื่อ ที่อยู่อีเมล และแหล่งที่มา
  3. ใช้โหนด If ปฏิเสธคำขอที่ไม่มีข้อมูลจำเป็น
  4. สร้างดีลใน CRM หรือส่งคำขอผ่าน HTTP Request
  5. เพิ่มการแจ้งเตือน Telegram
  6. จบสายงานด้วยโหนด Respond to Webhook
  7. หลังทดสอบแล้ว ให้เปิดใช้งานเวิร์กโฟลว์และเปลี่ยนจาก webhook ทดสอบเป็น URL สำหรับใช้งานจริง

ตัวอย่างนี้ตรวจสอบโดเมน HTTPS คำขอขาเข้า ข้อมูลรับรอง และการเชื่อมต่อภายนอกได้ทันที จากนั้นเพิ่ม Error Workflow แยกต่างหากเพื่อแจ้งเตือนเมื่อสายงานหลักล้มเหลว

การรักษาความปลอดภัย n8n หลังติดตั้ง

อินสแตนซ์ n8n ที่ติดตั้งแล้วไม่ได้กลายเป็นระบบที่เชื่อถือได้โดยอัตโนมัติ หลังเปิดใช้งาน ตรวจสอบให้แน่ใจว่า:

  • ตัวแก้ไขเข้าถึงได้ผ่าน HTTPS เท่านั้น
  • .env มีสิทธิ์ 600 และไม่ถูก commit เข้า Git
  • คีย์ API ภายนอกมีสิทธิ์เท่าที่จำเป็น
  • webhook แต่ละรายการตรวจสอบลายเซ็นหรือซีเคร็ตของแหล่งที่มา
  • ประวัติการทำงานถูกลบโดยอัตโนมัติ
  • ข้อผิดพลาดในเวิร์กโฟลว์สำคัญถูกส่งให้ผู้ดูแล

Community node ถูกติดตั้งเป็นแพ็กเกจและอาจเข้าถึงข้อมูลเวิร์กโฟลว์กับเซิร์ฟเวอร์ได้ อย่าเพิ่มโหนดที่ไม่รู้จักโดยไม่ตรวจสอบ หากไม่ต้องใช้ ให้ปิดด้วย N8N_COMMUNITY_PACKAGES_ENABLED=false

เรียกใช้การตรวจสอบในตัว:

docker compose exec n8n n8n audit

คำสั่งนี้ช่วยค้นหา webhook ที่ไม่มีการป้องกัน โหนดที่มีความเสี่ยง และปัญหาข้อมูลรับรอง แต่ไม่สามารถแทนที่การตรวจสอบด้วยตนเองได้

ประวัติการทำงานและข้อมูลส่วนบุคคล

n8n จัดเก็บข้อมูลนำเข้าและผลลัพธ์ไว้เพื่อการดีบัก ข้อมูลดังกล่าวอาจรวมอีเมล หมายเลขโทรศัพท์ เอกสาร และคำตอบจาก API ที่ค้างอยู่ในฐานข้อมูล

ในการกำหนดค่าข้างต้น ระบบจะลบการทำงานหลังเจ็ดวันและจำกัดจำนวนไว้ที่ 10,000 รายการ สำหรับกระบวนการที่มีข้อมูลอ่อนไหว ให้เลือกระยะเวลาเก็บตามนโยบายของคุณ และลบฟิลด์ที่ไม่จำเป็นก่อนจบเวิร์กโฟลว์

การสำรองข้อมูลและการอัปเดต

การกู้คืนต้องใช้ดัมป์ PostgreSQL, วอลุ่ม n8n_data, ไฟล์กำหนดค่า และ .env ที่มี N8N_ENCRYPTION_KEY ก่อนคัดลอก ให้หยุดตัวประมวลผลแต่ปล่อย PostgreSQL ให้ทำงานต่อ วิธีนี้ทำให้การประมวลผลเวิร์กโฟลว์หยุดชั่วครู่:

cd /opt/n8n
mkdir -p backup
docker compose stop n8n n8n-runner

docker compose exec -T postgres sh -c \
  'pg_dump -U "$POSTGRES_USER" "$POSTGRES_DB"' \
  | gzip > "backup/n8n-db-$(date +%F).sql.gz"

docker run --rm \
  -v n8n_data:/source:ro \
  -v "$PWD/backup":/backup \
  alpine sh -c \
  'tar -czf /backup/n8n-data-$(date +%F).tar.gz -C /source .'

tar -czf "backup/n8n-config-$(date +%F).tar.gz" \
  .env compose.yaml Caddyfile

docker compose start n8n n8n-runner

ไฟล์เก็บถาวรที่มี .env รวมซีเคร็ตไว้ด้วย ต้องเข้ารหัสและเก็บไว้นอก VPS ตรวจสอบแบ็กอัปเป็นระยะด้วยการกู้คืนทดสอบ

ก่อนอัปเดต ให้สำรองข้อมูลและอ่านบันทึกประจำรุ่น:

cd /opt/n8n
docker compose pull
docker compose up -d
docker compose ps

task runner และคอนเทนเนอร์หลักต้องใช้แท็กเวอร์ชันเดียวกัน

เมื่อใดจึงควรขยายระบบ

อย่าเริ่มด้วย Redis และ worker หลายตัวก่อนมีโหลดจริง อินสแตนซ์เดียวที่ใช้ PostgreSQL ดูแลง่ายกว่าและมักเพียงพอสำหรับกระบวนการภายในขนาดเล็ก

Queue mode จำเป็นเมื่อ งานที่ใช้เวลานานทำให้ webhook ช้า เวิร์กโฟลว์จำนวนมากเริ่มพร้อมกัน หรือการประมวลผลไฟล์ใช้หน่วยความจำจนหมดเป็นประจำ ในรูปแบบนี้ อินสแตนซ์หลักรับเหตุการณ์ Redis กระจายงาน และ worker ประมวลผลแบบขนาน ทุกองค์ประกอบต้องเชื่อมต่อ PostgreSQL เดียวกันและใช้ N8N_ENCRYPTION_KEY เดียวกัน

ควรเลือก VPS แบบใดสำหรับ n8n

สำหรับ n8n, PostgreSQL, Caddy และ task runner การเริ่มด้วย 2 vCPU, RAM 4 GB และไดรฟ์ NVMe เป็นทางเลือกที่เหมาะสม บน tropic.host แพ็กเกจ Light ตรงกับการกำหนดค่านี้: 2 vCPU, RAM 4 GB และ NVMe 25 GB เพียงพอสำหรับเวิร์กโฟลว์ใช้งานจริงระยะแรกโดยไม่ประมวลผลไฟล์หนัก

หากทำงานกับเอกสาร ชุดข้อมูลขนาดใหญ่ และเวิร์กโฟลว์ AI หลายรายการพร้อมกัน ควรเลือก RAM 8 GB เครือข่ายที่เสถียรก็สำคัญเช่นกัน เพราะ webhook, OAuth callback และงานตามตารางเวลาต้องพร้อมใช้งานอย่างต่อเนื่อง

สรุป

n8n เปลี่ยนงานซ้ำซ้อนให้เป็นโฟลว์ภาพที่เข้าใจง่าย: โหนดสำเร็จรูปช่วยให้เริ่มได้เร็ว HTTP Request เชื่อมต่อ API ได้เกือบทุกชนิด และ Code node เปิดทางให้เพิ่มตรรกะของคุณเอง

เวอร์ชันโฮสต์เองให้คุณควบคุมเซิร์ฟเวอร์และฐานข้อมูล แต่ต้องดูแล HTTPS คีย์ที่จำกัดสิทธิ์ การล้างประวัติ และแบ็กอัปที่ผ่านการตรวจสอบ เก็บ N8N_ENCRYPTION_KEY ไว้พร้อมกับ PostgreSQL เพราะหากไม่มีคีย์ ข้อมูลรับรองที่กู้คืนจะถอดรหัสไม่ได้

FAQ

n8n ใช้งานฟรีได้หรือไม่

ได้ Community Edition โฮสต์เองบนเซิร์ฟเวอร์ของคุณได้ฟรีสำหรับงานส่วนตัวและงานภายใน การขาย n8n ที่โฮสต์ให้เป็น SaaS แยกต่างหากถูกจำกัดโดยใบอนุญาต fair-code

ติดตั้ง n8n โดยไม่มีโดเมนได้หรือไม่

ได้สำหรับการทดสอบในเครื่อง แต่สำหรับ webhook สาธารณะและ OAuth ควรใช้โดเมนพร้อม HTTPS

n8n ต้องใช้ RAM เท่าไร

เวิร์กโฟลว์ส่วนตัวแบบง่ายมักทำงานได้ด้วย RAM 2 GB สำหรับ n8n พร้อม PostgreSQL, Caddy และ task runner ควรมี 4 GB ส่วนไฟล์และการทำงานพร้อมกันอาจต้องใช้ 8 GB ขึ้นไป

ข้อมูลทั้งหมดอยู่ภายใน VPS หรือไม่

เฉพาะข้อมูลที่เวิร์กโฟลว์ไม่ได้ส่งออกไปเท่านั้น ฐานข้อมูลและประวัติการทำงานอยู่บน VPS แต่โหนด Telegram, CRM หรือโมเดล AI ภายนอกจะส่งข้อมูลที่เลือกไปยังบริการนั้น

แบ็กอัป n8n ต้องมีอะไรบ้าง

ต้องมีดัมป์ PostgreSQL, วอลุ่ม n8n_data, compose.yaml, Caddyfile และ .env ที่มี N8N_ENCRYPTION_KEY เก็บแบ็กอัปไว้นอก VPS ในรูปแบบเข้ารหัส และตรวจสอบด้วยการกู้คืน