reefsight.tech ทั้งเว็บ API ฐานข้อมูล Redis และ MCP server อยู่บน VPS เครื่องเดียวที่เช่าจาก Hostinger ตั้งแต่วันแรก บทความนี้เล่าว่าเราตั้งค่าอย่างไร เสียเงินเท่าไหร่ และอะไรที่อยากให้รู้ก่อนเลือกทางเดียวกัน ตัวเลข uptime ที่หน้า /status คือผลจริงจากเครื่องนี้
ทำไมถึงเป็น VPS เครื่องเดียว
เครื่องมือฟรีของเราเป็น Go binary ตัวเดียวกับ Next.js หนึ่งตัว ใช้ PostgreSQL กับ Redis อย่างละหนึ่ง โหลดต่อวันอยู่ในระดับที่ KVM เครื่องเดียวรับได้สบาย การแยกเป็นหลายเครื่องหรือใช้ managed service จะเพิ่มค่าใช้จ่ายเป็นเท่าตัวโดยที่ผู้ใช้ไม่ได้อะไรเพิ่ม เราจึงเลือก Hostinger KVM 4 (4 vCPU, 16 GB RAM, 200 GB NVMe) กับ Ubuntu 24.04 แบบที่มี EasyPanel ติดตั้งมาให้ ราคาตอนที่เขียนอยู่ราวเดือนละ 300 กว่าบาทเมื่อจ่ายรายปี
สิ่งที่รันอยู่บนเครื่อง
| Service | ทำอะไร | เปิดสู่ภายนอก |
|---|---|---|
| reefsight-fe | Next.js ที่ CI build เป็น Docker image | reefsight.tech |
| reefsight-br | Go API ทุก endpoint ใต้ /api/v1 และ MCP ที่ /mcp | api.reefsight.tech |
| reefsight-pg | PostgreSQL 17 | ไม่เปิด อยู่ใน network ภายในของ EasyPanel |
| reefsight-redis | Redis 8 ใช้ทำ rate limit, session และตัวนับการใช้เครื่องมือ | ไม่เปิด |
EasyPanel ทำหน้าที่เป็น reverse proxy ออก TLS ให้อัตโนมัติ และ deploy จาก GitHub เมื่อ main เปลี่ยน ส่วน CI ของเราจะรัน test ทั้งหมดก่อน แล้วค่อยสั่ง deploy ผ่าน webhook เฉพาะส่วนที่เปลี่ยน (API หรือเว็บ)
ขั้นตอนตั้งค่าแบบย่อ
- สั่ง VPS แล้วเลือก OS เป็น Ubuntu 24.04 with EasyPanel จะได้ panel พร้อมใช้ภายในไม่กี่นาที ไม่ต้องลง Docker เอง
- ชี้ DNS ของโดเมนมาที่ IP ของเครื่อง (A และ AAAA) แล้วค่อยเพิ่มโดเมนใน EasyPanel ให้มันออกใบรับรอง Let's Encrypt
- สร้าง project หนึ่งอัน แล้วเพิ่ม service PostgreSQL และ Redis จาก template ตั้งรหัสผ่านคนละชุด ไม่เปิดพอร์ตออกข้างนอก
- เพิ่ม service แบบ GitHub source สำหรับ API โดยชี้ Dockerfile ใน repo และใส่ environment ผ่าน panel ไม่เก็บใน repo
- เพิ่ม service แบบ Docker image สำหรับเว็บ ให้ CI build แล้ว push ไป GitHub Container Registry และสั่ง deploy ผ่าน webhook ของ EasyPanel
- ตั้ง backup ฐานข้อมูลไป S3 จาก panel และทดสอบ restore จริงหนึ่งครั้งก่อนไว้ใจ
สิ่งที่ควรรู้ก่อนเลือกแบบเดียวกัน
- เครื่องเดียวคือจุดเดียวที่ล่มได้ เรารับความเสี่ยงนี้เพราะเป็นเครื่องมือฟรี ถ้าระบบของคุณมี SLA ให้แยกฐานข้อมูลออกหรือทำ replica
- EasyPanel ไม่ใช่ Kubernetes ถ้าต้องการ autoscale หรือหลาย region มันไม่ตอบโจทย์ แต่สำหรับทีมเล็กมันคือความสบายใจที่ได้มาด้วยราคาถูก
- เก็บ secret ไว้ใน panel เท่านั้น และใช้บัญชีแยกต่อ service การหมุนรหัสผ่านทำได้จาก panel โดยไม่ต้อง rebuild
- ดู uptime ของจริง หน้า /status ของเราเก็บผลตรวจทุกนาทีและแสดงย้อนหลัง 90 วัน จะได้ไม่ต้องเชื่อคำโฆษณาของใคร รวมถึงของเรา
ลิงก์แนะนำ
ถ้าจะลอง Hostinger ใช้ ลิงก์แนะนำของเรา ได้ คุณได้ส่วนลด 20% สำหรับการซื้อครั้งแรก และเราได้ค่าแนะนำเล็กน้อยไว้จ่ายค่าเซิร์ฟเวอร์ของเครื่องมือฟรี ราคาที่คุณจ่ายไม่ต่างจากสมัครตรง และเราเขียนบทความนี้เพราะใช้เองจริง ไม่ใช่เพราะมีค่าแนะนำ
แหล่งอ้างอิง: แพ็กเกจ VPS ของ Hostinger · เอกสาร EasyPanel
