EQVPS

โฮสต์ n8n เองบน VPS ด้วย Docker

Jun 15, 2026 · 1 นาทีในการอ่าน · EQVPS Team

n8n เป็นเครื่องมือประเภทที่คุณเริ่มใช้เบา ๆ แล้วเงียบ ๆ กำหนดเส้นทางครึ่งการดำเนินการของคุณผ่านมัน ณ จุดนั้น "มันรันบนที่นั่งคลาวด์ของคนอื่น วัดต่อการรัน พร้อมคีย์ API ของฉันอยู่บนเซิร์ฟเวอร์พวกเขา" เริ่มรู้สึกไม่ค่อยดี การโฮสต์เองแก้ทั้งสาม — ต้นทุนคงที่ ไม่มี cap การรัน และคีย์ของคุณอยู่บนเครื่องที่คุณเป็นเจ้าของ ด้วย Docker มันเป็นงานสิบห้านาที

มันต้องการเซิร์ฟเวอร์เท่าไรจริง ๆ

ตัวเลขจริงก่อน เพื่อให้คุณไม่ซื้อเกินหรือขาด:

n8n ไม่หิว CPU ตอนพัก มันพุ่งระหว่างการรัน เครื่อง 2 คอร์โอเคสำหรับการตั้งค่าส่วนใหญ่ (เพิ่มเติมเรื่องการจับคู่สเปกกับงานในคู่มือกำหนดขนาด)

การตั้งค่า Docker

บนเครื่อง Ubuntu/Debian สด ติดตั้ง Docker:

curl -fsSL https://get.docker.com | sudo sh

สร้างโฟลเดอร์และ docker-compose.yml — n8n พร้อม volume ที่คงอยู่และ Postgres:

services:
  n8n:
    image: docker.n8n.io/n8nio/n8n
    restart: always
    ports:
      - "127.0.0.1:5678:5678"
    environment:
      - N8N_HOST=n8n.yourdomain.com
      - N8N_PROTOCOL=https
      - WEBHOOK_URL=https://n8n.yourdomain.com/
      - DB_TYPE=postgresdb
      - DB_POSTGRESDB_HOST=db
      - DB_POSTGRESDB_PASSWORD=change-me
    volumes:
      - ./n8n-data:/home/node/.n8n
    depends_on: [db]
  db:
    image: postgres:16
    restart: always
    environment:
      - POSTGRES_PASSWORD=change-me
      - POSTGRES_DB=n8n
    volumes:
      - ./db-data:/var/lib/postgresql/data
sudo docker compose up -d

สองสิ่งที่ควรชี้: volume (n8n-data, db-data) คือสิ่งที่เก็บเวิร์กโฟลว์ของคุณให้มีชีวิตข้ามการรีสตาร์ทและอัปเกรด — อย่าข้ามมัน และ n8n ผูกกับ 127.0.0.1 ไม่ใช่ 0.0.0.0 — มันไม่ถูกเปิดต่ออินเทอร์เน็ตโดยตรง นั่นตั้งใจ ขั้นถัดไปจัดการการเข้าถึงอย่างปลอดภัย

การเข้าถึง: HTTPS หรือ tunnel

ล็อกมันและเก็บมันให้ขึ้น

n8n ถือคีย์ API และข้อมูลรับรองของคุณ ดังนั้นเครื่องต้องแน่น: ทำเช็กลิสต์ความปลอดภัย (คีย์ SSH firewall ไม่มีการเข้าสู่ระบบด้วยรหัสผ่าน) ก่อนคุณใส่ข้อมูลรับรองจริง restart: always ในไฟล์ compose หมายถึง Docker นำ n8n กลับหลังแครชหรือรีบูตแล้ว — นั่นคืออัปไทม์ของคุณจัดการแล้ว

มันคุ้มไหม?

ตรงไปตรงมากับตัวเองเรื่องปริมาณ หากคุณรันระบบอัตโนมัติตลอด การโฮสต์เองชนะเรื่องต้นทุน (คงที่กับต่อการรัน) และกำจัดขีดจำกัดเวิร์กโฟลว์/การรัน หากคุณ trigger ไม่กี่ flow ต่อเดือน ที่นั่งที่โฮสต์ให้ยุ่งยากน้อยกว่า แต่ข้อโต้แย้งการควบคุมยืนไม่ว่าอะไร: เวิร์กโฟลว์ของคุณ ข้อมูลของคุณ คีย์ของคุณ — บนเซิร์ฟเวอร์ของคุณ ไม่เช่า สำหรับคนส่วนใหญ่ที่จริงจังกับ n8n นั่นคือปัจจัยตัดสิน

เครื่อง 2 GB ไฟล์ compose โดเมน (หรือ tunnel) และคุณรันฮับระบบอัตโนมัติของคุณเอง — จ่ายได้ด้วยคริปโตไม่ต้อง KYC ออนไลน์ในไม่กี่นาที


การตั้งค่าสำเร็จรูป: ดู VPS สำหรับ n8n — แพ็กเกจที่แนะนำและการติดตั้งคริปโตหนึ่งนาที

FAQ

n8n ที่โฮสต์เองต้องการ RAM เท่าไร?

ราว 2 GB คือจุดที่ลงตัวที่สบายสำหรับ n8n บวกฐานข้อมูล Postgres และเวิร์กโฟลว์ปกติ มันรันใน 1 GB หากเวิร์กโฟลว์เบา แต่คุณจะรู้สึกระหว่างการรันใหญ่ การรันขนานหนักหรือ payload ใหญ่ — ไปที่ 4 GB

ฉันต้องการ Docker เพื่อโฮสต์ n8n เองไหม?

มันเป็นทางที่ง่ายที่สุดโดยห่าง — ไฟล์ compose เดียวให้คุณ n8n ฐานข้อมูล และพื้นที่จัดเก็บที่คงอยู่ และการอัปเกรดคือการ pull เดียว คุณติดตั้งผ่าน npm แทนได้ แต่ Docker ประหยัดปวดหัว dependency และการอัปเกรด

การโฮสต์ n8n เองถูกกว่า n8n cloud ไหม?

หากคุณรันสตรีมระบบอัตโนมัติสม่ำเสมอ ใช่ — VPS รายเดือนคงที่เอาชนะราคาต่อการรัน และไม่มี cap เวิร์กโฟลว์หรือการรัน สำหรับการรันไม่กี่ครั้งต่อเดือน ที่นั่งที่โฮสต์ให้อาจง่ายกว่า อีกเหตุผลที่คนโฮสต์เองคือการควบคุม: ข้อมูลและคีย์ API ของคุณไม่เคยออกจากเซิร์ฟเวอร์

ฉันต้องมีโดเมนสำหรับ n8n ไหม?

สำหรับ node ที่อิง OAuth (Google ฯลฯ) และ HTTPS สะอาด ใช่ — ชี้โดเมนไปที่เซิร์ฟเวอร์และวาง n8n หลัง reverse proxy พร้อมใบรับรอง สำหรับการใช้ภายในล้วน คุณเข้าถึงมันผ่าน SSH tunnel โดยไม่มีโดเมนได้

n8n รันบน NAT VPS ได้ไหมหรือต้องมี dedicated IP?

การใช้ภายใน/SSH-tunnel ทำงานบนเครื่อง NAT หากคุณต้องการ URL สาธารณะพร้อมโดเมนและ HTTPS ของคุณเอง (จำเป็นสำหรับ OAuth callback และ webhook บางตัว) แพ็กเกจ dedicated-IP เหมาะกว่าเพราะคุณควบคุมทุกพอร์ต

← กลับไปบล็อกดูแพ็กเกจและราคา →

ความคิดเห็น

ยังไม่มีความคิดเห็น เป็นคนแรกสิ

แสดงความคิดเห็น

ความคิดเห็นจะถูกตรวจสอบก่อนแสดง