Docker คือเครื่องมือที่แพ็กแอปพลิเคชันหนึ่งตัวพร้อมทุกอย่างที่มันต้องใช้ — ไลบรารี เวอร์ชันภาษา ค่าคอนฟิก — ลงในกล่องปิดผนึกที่เรียกว่า container แล้วรันกล่องนั้นบนเครื่องไหนก็ได้ที่มี Docker โดยได้ผลลัพธ์เหมือนกันทุกครั้ง มันไม่ใช่ภาษาโปรแกรม ไม่ใช่บริการคลาวด์ และไม่ใช่ของที่ธุรกิจทุกที่จำเป็นต้องใช้ แต่ถ้าคุณเป็นธุรกิจไทยที่กำลังหาคำว่า Docker เหตุผลมักมีอยู่ข้อเดียว: คุณกำลังคิดจะ self-host อะไรสักอย่างบนเซิร์ฟเวอร์ของตัวเอง — n8n, ฐานข้อมูล, chatbot — เพื่อเลิกจ่ายรายเดือนเป็นสกุลเงินต่างประเทศ บทความนี้เขียนจากมุมนั้น ไม่ใช่มุมของคนเรียน DevOps
📌 อ่านสั้นสุด: Docker = กล่องปิดผนึกที่ทำให้แอปรันเหมือนกันทุกเครื่อง · เหตุผลหลักที่ธุรกิจไทยต้องรู้จักมันคือ self-host เครื่องมือเอง · เครื่อง VPS ในไทยเริ่มที่หลักร้อยบาทต่อเดือน แต่ต้นทุนที่แพงจริงคือเวลาของคุณ ไม่ใช่ค่าเครื่อง
Docker คืออะไร — อธิบายด้วยปัญหาที่มันแก้
ก่อนมี Docker ปัญหาที่เจอประจำคือโปรแกรมรันได้บนเครื่องคนเขียน แต่พอย้ายขึ้นเซิร์ฟเวอร์แล้วพัง เพราะเซิร์ฟเวอร์มี Node หรือ Python คนละเวอร์ชัน ขาดไลบรารีบางตัว หรือ path ไม่ตรงกัน Docker แก้ด้วยการเลิกย้ายเฉพาะ "โค้ด" แล้วย้าย ทั้งสภาพแวดล้อม ไปพร้อมกัน ศัพท์ที่ต้องรู้จริงๆ มีแค่สี่คำ ที่เหลือค่อยไปเรียนตอนเจอปัญหา
- •Image — แบบที่ build เสร็จแล้ว อ่านอย่างเดียว แก้ไม่ได้ เหมือนไฟล์ติดตั้งที่แช่แข็งไว้ทั้งก้อน
- •Container — image ที่ถูกสั่งรัน หนึ่ง image สร้าง container ได้หลายตัว ลบทิ้งแล้วสร้างใหม่ได้ในไม่กี่วินาที
- •Volume — พื้นที่เก็บข้อมูลที่แยกออกมาอยู่นอก container ข้อนี้สำคัญที่สุด เพราะถ้าไม่ผูก volume ข้อมูลจะหายเกลี้ยงตอนคุณอัปเดตเวอร์ชัน
- •Port — ช่องที่ container เปิดให้ข้างนอกเข้าถึง เช่น n8n เปิดที่ 5678 แล้วคุณค่อยเอา reverse proxy มาครอบให้เป็น HTTPS อีกชั้น
💡 กฎข้อเดียวที่ทำให้พลาดน้อยที่สุด: container ทิ้งได้ volume ทิ้งไม่ได้ ทุกอย่างที่คุณจะเสียใจถ้าหาย ต้องอยู่ใน volume หรือฐานข้อมูลภายนอกเสมอ

Docker ต่างจาก VM และต่างจากการติดตั้งลงเครื่องตรงๆ ยังไง
คำถามนี้ฟังดูเป็นเรื่องเทคนิค แต่จริงๆ แล้วมันคือเรื่องเงิน เพราะมันตัดสินว่าเครื่องราคาเท่าไหร่ถึงจะพอ
| วิธีติดตั้ง | กินทรัพยากร | เวลาตั้งค่า | ย้ายไปเครื่องใหม่ |
|---|---|---|---|
| ติดตั้งลงเซิร์ฟเวอร์ตรงๆ | น้อยสุด | นาน และพังง่ายเวลาอัปเดต | ต้องไล่ทำใหม่ทั้งหมด |
| Virtual Machine | มากสุด — มี OS เต็มตัวต่อหนึ่งเครื่อง | นาน | ย้ายได้ แต่ไฟล์ใหญ่มาก |
| Docker container | น้อย — ใช้ kernel ร่วมกับเครื่องแม่ | หลักนาที | คัดลอกไฟล์คอนฟิกไปรันใหม่ |
ความต่างนี้มีผลจริงที่สเกลของ VPS ที่ธุรกิจไทยเช่าจริง เครื่อง RAM 2 GB รัน virtual machine หลายตัวไม่ไหวแน่นอน แต่รัน container 3-4 ตัว (n8n + ฐานข้อมูล + reverse proxy) ได้สบายๆ เพราะ container ไม่ต้องแบก OS ของตัวเองมาด้วย นี่คือเหตุผลที่ self-host สมัยนี้แทบทุกคู่มือพูดถึง Docker ไม่ใช่ VM
ทำไมบทความ Docker ถึงมาอยู่บนเว็บที่ปรึกษา AI — คำตอบคือ self-host
เครื่องมือ automation และ AI ที่ธุรกิจไทยใช้กันเยอะ มีทางเลือกสองทางเสมอ: จ่ายรายเดือนให้เจ้าของบริการดูแลให้ หรือติดตั้งบนเครื่องตัวเอง n8n เป็นตัวอย่างที่ชัดที่สุด เพราะเวอร์ชัน Community ฟรีจริงและได้ฟีเจอร์เกือบครบ (n8n คืออะไร ราคาเท่าไหร่ ควร self-host ไหม อธิบายวิธีคิดเงินแบบต่อ execution ไว้ละเอียด) และวิธีที่คนติดตั้ง n8n บนเซิร์ฟเวอร์ตัวเองจริงๆ ในปี 2026 คือ Docker ไฟล์หน้าตาประมาณนี้:
services:
n8n:
image: n8nio/n8n
restart: always
ports:
- "5678:5678"
environment:
- N8N_HOST=n8n.yourdomain.co.th
- WEBHOOK_URL=https://n8n.yourdomain.co.th/
- GENERIC_TIMEZONE=Asia/Bangkok
- TZ=Asia/Bangkok
volumes:
- n8n_data:/home/node/.n8n
volumes:
n8n_data:เซฟไฟล์นี้ชื่อ docker-compose.yml แล้วสั่ง docker compose up -d ครั้งเดียว — จบ ประเด็นไม่ได้อยู่ที่ว่ามันสั้น แต่อยู่ที่บรรทัดที่คนไทยมักลืมสองบรรทัด
GENERIC_TIMEZONE=Asia/Bangkok และ TZ=Asia/Bangkok — ถ้าไม่ใส่ container จะเดินเวลาเป็น UTC แปลว่า workflow ที่คุณตั้งให้ส่งรายงานตอน 9 โมงเช้า จะยิงจริงตอนสี่ทุ่มของเมื่อวาน เป็นบั๊กที่หาไม่เจอเพราะระบบไม่ได้พังอะไรเลย
WEBHOOK_URL — n8n ต้องรู้ URL จริงของตัวเองเพื่อสร้าง endpoint ให้บริการภายนอกยิงเข้ามา ถ้าใส่ผิด LINE Messaging API จะยิง webhook ไปที่ที่อยู่ผิดแล้วคุณจะนั่งงงว่าทำไมข้อความไม่เข้า (webhook คืออะไร ทำงานยังไง)
ตัว Docker เองเสียเงินไหม
แยกให้ชัดสองอย่าง เพราะคนสับสนกันมาก Docker Engine คือตัวที่รันบน Linux server — เป็น open source และไม่มีค่าใช้จ่าย นี่คือสิ่งที่คุณจะใช้จริงบน VPS และมันฟรี Docker Desktop คือแอปหน้าตาสวยบน Windows และ Mac ที่นักพัฒนาใช้ตอนเขียนงานบนเครื่องตัวเอง อันนี้มีแพลนเสียเงิน หน้า pricing ของ Docker ระบุ Personal ที่ $0, Pro $9/เดือน, Team $15/ผู้ใช้/เดือน (เรทจ่ายรายปี) และ Business $24/ผู้ใช้/เดือน พูดตรงๆ ตามที่ตรวจสอบได้: หน้า pricing ของ Docker ไม่ได้ระบุ เกณฑ์จำนวนพนักงานหรือรายได้ที่บังคับให้องค์กรต้องจ่าย ถ้าบริษัทคุณมีขนาดใหญ่และใช้ Docker Desktop กันทั้งทีม ให้ไปอ่านเงื่อนไขการใช้งานของ Docker เองก่อน อย่าเชื่อบล็อกไหนรวมทั้งบล็อกนี้ แต่สำหรับกรณีที่บทความนี้พูดถึง — รัน n8n บน VPS Linux — คุณใช้ Docker Engine ล้วนๆ และไม่มีค่าลิขสิทธิ์
ค่า self-host จริงในไทยเท่าไหร่
ตัวเลขจริงจากหน้าเว็บของผู้ให้บริการไทยรายหนึ่ง (hostatom, เครื่องอยู่ที่ดาต้าเซ็นเตอร์ The Cloud Tower เกษตร-นวมินทร์) แพ็กเกจ Cloud VPS ราคาต่อเดือนคือ 2 GB RAM ที่ ฿290, 4 GB ที่ ฿590, 8 GB ที่ ฿1,190 และ 16 GB ที่ ฿2,390 — ทั้งหมด ยังไม่รวม VAT 7% ผู้ให้บริการไทยรายอื่นที่คนใช้กันก็มี Netway, Ruk-Com และ Z.com ราคาอยู่ในช่วงใกล้เคียงกัน ควรเทียบสเปกจริงบนหน้าเว็บของแต่ละเจ้าเองก่อนตัดสิน สำหรับ n8n ที่รันงานของ SME ทั่วไป เครื่อง 4 GB RAM คือจุดที่สบายใจได้ — ฿590 + VAT ราว ฿631 ต่อเดือน ส่วน 2 GB พอรันได้ถ้า workflow ไม่หนักและไม่ประมวลผลรูปเยอะ
⚠️ นี่คือจุดที่ต้องซื่อสัตย์: ในระดับเริ่มต้น self-host แทบไม่ประหยัดเงินเลย ค่าเครื่อง ฿631/เดือน เทียบกับแพลน Starter ของ n8n ที่ €20/เดือน ถือว่าอยู่ระดับใกล้กัน แถมคุณยังต้องบวกโดเมน (~฿400-600/ปี), ที่เก็บ backup นอกเครื่อง และเวลาของคุณเอง ที่ประหยัดจริงคือตอนโตถึงรอยต่อที่แพลนคลาวด์กระโดดขั้น — ของ n8n คือช่วง Pro ไป Business ที่ขยับจาก €50 เป็น €667/เดือน ขณะที่ VPS 16 GB ก็ยังคิดคุณ ฿2,390 เท่าเดิม

PDPA กับเหตุผลที่บางธุรกิจไทยอยากได้เซิร์ฟเวอร์ตั้งอยู่ในไทยจริงๆ
เหตุผลที่หนักกว่าเรื่องเงินคือเรื่องข้อมูล คลินิก สำนักงานบัญชี ธุรกิจที่ถือเลขบัตรประชาชน ประวัติคนไข้ หรือรูปสลิปโอนเงินของลูกค้า มีคำถามที่ต้องตอบให้ได้ว่าข้อมูลชุดนั้นไปนอนอยู่ที่ประเทศไหน ถ้า workflow ของคุณรันบนคลาวด์ต่างประเทศ ข้อมูลลูกค้าคนไทยจะวิ่งออกนอกประเทศทุกครั้งที่ workflow ทำงาน ถ้ารันบน container ใน VPS ที่ตั้งอยู่กรุงเทพฯ มันไม่วิ่งออกไปไหนเลย — และคุณชี้ได้ว่าเครื่องอยู่ตึกไหน
⚠️ อย่าเข้าใจผิด — PDPA ไม่ได้ห้ามใช้คลาวด์ต่างประเทศ กฎหมายกำหนดให้ต้องมีมาตรการคุ้มครองที่เหมาะสมและฐานทางกฎหมายในการส่งข้อมูลออกนอกประเทศ ไม่ใช่ห้ามส่ง การมีเซิร์ฟเวอร์ในไทยแค่ทำให้เรื่องนี้อธิบายง่ายขึ้นมาก ไม่ใช่ทำให้คุณพ้นหน้าที่ตาม PDPA อัตโนมัติ (สิ่งที่เว็บต้องมีตาม PDPA)

ภาระที่คนประเมินต่ำที่สุด — อัปเดต แบ็กอัป และความปลอดภัย
ตอนติดตั้งใช้เวลาครึ่งชั่วโมง ตอนดูแลใช้เวลาไปตลอด และนี่คือส่วนที่คู่มือ self-host ส่วนใหญ่ข้ามไป เพราะมันไม่สนุก n8n instance ที่เปิดทิ้งไว้บนอินเทอร์เน็ตโดยไม่มีคนอัปเดต อันตรายกว่าการฝากข้อมูลไว้กับคลาวด์ที่มีทีมความปลอดภัยดูแลเต็มเวลา — เพราะมันถือ credential ของ LINE OA, Google Sheets และฐานข้อมูลของคุณไว้ในที่เดียวกันทั้งหมด
- 1.อัปเดตความปลอดภัยของ OS — อย่างน้อยเดือนละครั้ง ไม่ใช่ "ตอนที่นึกได้"
- 2.อัปเดต image ของแอป — ต้องอ่าน release note ว่ามี breaking change ไหมก่อนดึงเวอร์ชันใหม่ และควร pin เวอร์ชันไว้แทนการใช้ tag latest ลอยๆ
- 3.Backup volume ออกไปนอกเครื่อง — backup ที่อยู่บนเครื่องเดียวกับต้นฉบับไม่นับเป็น backup และ backup ที่ไม่เคยลอง restore ก็ไม่นับเหมือนกัน
- 4.HTTPS — ข้อนี้เบาที่สุด เพราะ certbot ต่ออายุใบรับรองให้อัตโนมัติ ตั้งครั้งเดียวจบ
- 5.มีคนรับผิดชอบเวลาเครื่องล่ม — ถ้าคำตอบคือ "เดี๋ยวผมดูให้" แปลว่ายังไม่มีคนรับผิดชอบ

แล้วทีมเล็กควรใช้ Docker ไหม — คำตอบตรงๆ
จุดยืนของเราคือ ทีมเล็กส่วนใหญ่ในไทยยังไม่ควรเริ่มด้วยการ self-host ไม่ใช่เพราะ Docker ยาก แต่เพราะเวลาของเจ้าของธุรกิจแพงกว่าค่าแพลนรายเดือนมาก และ automation ตัวแรกของคุณควรถูกวัดว่าคืนทุนกี่เดือน (วิธีคำนวณ ROI ของ automation) ไม่ใช่วัดว่าประหยัดค่าโฮสต์ได้เท่าไหร่ ข้ามไปเลยได้ ถ้า: ในทีมไม่มีใครใช้ command line เป็น, workflow ยังไม่ถึงร้อยครั้งต่อเดือน, หรือคุณยังไม่แน่ใจด้วยซ้ำว่าจะ automate อะไร (เทียบ n8n กับ Make และ Zapier ก่อนดีกว่า) ควรเริ่มเรียน Docker จริงจัง เมื่อเข้าข้อใดข้อหนึ่ง: (1) มีข้อกำหนดเรื่องข้อมูลที่ห้ามออกนอกเซิร์ฟเวอร์ที่คุณคุมได้ (2) ปริมาณงานแตะจุดที่แพลนคลาวด์กระโดดขั้นราคา (3) มีคนในทีมที่ดูแลเซิร์ฟเวอร์เป็นงานประจำอยู่แล้ว ไม่ใช่งานอดิเรก
สรุป — Docker คือกล่องปิดผนึกที่ทำให้แอปรันเหมือนกันทุกเครื่อง และเป็นวิธีมาตรฐานในการ self-host เครื่องมืออย่าง n8n บน VPS ไทยที่เริ่มราวหลักร้อยบาทต่อเดือน จำสองข้อพอ: container ทิ้งได้ volume ทิ้งไม่ได้ และ ค่าเครื่องไม่ใช่ต้นทุนที่แพงที่สุด เวลาดูแลต่างหาก อยากให้ช่วยประเมินว่าธุรกิจคุณควร self-host หรือจ่ายคลาวด์ไปก่อน? ปรึกษาเรื่อง AI และ automation
Arm - CherCode
Full-Stack Developer & Founder
นักพัฒนาซอฟต์แวร์ที่มีประสบการณ์กว่า 5 ปีด้าน Web Development, AI Integration และ Automation เชี่ยวชาญ Next.js, React, n8n และ LLM Integration ผู้ก่อตั้ง CherCode ให้บริการพัฒนาระบบสำหรับธุรกิจไทย
Portfolio


