Deploy · สำหรับมือใหม่

เอาระบบขึ้นออนไลน์ยังไง

สั่ง AI สร้างระบบเสร็จแล้ว... แต่มันยังอยู่ในเครื่องเรา "Deploy" คือการเอาขึ้นเว็บจริงให้คนอื่นเปิดใช้ได้ผ่านลิงก์. หน้านี้อธิบายทีละขั้น แบบไม่ต้องเป็นโปรแกรมเมอร์

Deploy คืออะไร ทำไมต้องรู้

เว็บที่ AI สร้างให้ตอนแรก รันได้แค่ในเครื่องเรา— คนอื่นเปิดไม่ได้. "Deploy" (ดีพลอย) คือเอาโค้ดไปวางบน โฮสต์ (host)= เครื่องที่เปิดตลอด 24 ชม. แล้วได้ลิงก์ที่ทุกคนเข้าได้. ไม่ต้องเขียนโค้ดเก่งก็ทำได้ ถ้าเข้าใจว่าเว็บประกอบจากอะไรและแต่ละชิ้นไปอยู่ที่ไหน — หน้านี้ปูพื้นให้ครบ

เว็บประกอบจากอะไรโฮสต์ที่ไหนขั้นตอน deployโดเมนSecrets
เว็บประกอบจากอะไร frontend · backend · database

ระบบ 1 ตัวไม่ใช่ก้อนเดียว แต่มี 3 ชั้นทำงานร่วมกัน: หน้าเว็บ (frontend)สิ่งที่ผู้ใช้เห็นและกด · หลังบ้าน (backend)สมองที่ประมวลผล/ตรวจสิทธิ์ · ฐานข้อมูล (database)ที่เก็บข้อมูลถาวร. รู้ว่าอะไรอยู่ชั้นไหน จะ deploy ถูกที่

ตัวอย่างจริงพนักงานกดปุ่ม "ทำเงินเดือน" บนหน้าเว็บ→ คำสั่งวิ่งไปหลังบ้านคำนวณภาษีตามกฎ → ดึงข้อมูลพนักงานจากฐานข้อมูลมาคิด → ส่งสลิปกลับมาโชว์. ทั้ง 3 ชั้นต้องอยู่ออนไลน์ครบถึงจะใช้งานได้
เปรียบเทียบ
เหมือนร้านอาหาร: หน้าเว็บ=หน้าร้าน/เมนูที่ลูกค้าเห็น · หลังบ้าน=ครัวที่ทำอาหาร · ฐานข้อมูล=ตู้เก็บวัตถุดิบ
ระวัง
เว็บง่าย ๆ (หน้าโชว์ข้อมูลเฉย ๆ) อาจมีแค่ frontend ก็พอ — แต่ระบบที่มี login/บันทึกข้อมูล ต้องครบทั้ง 3
🖥️
หน้าเว็บ frontend
สิ่งที่ผู้ใช้เห็น/กด — หน้าจอ ปุ่ม ฟอร์ม
↕ ส่งคำสั่ง / รับผลลัพธ์
⚙️
หลังบ้าน backend / worker
สมองที่ประมวลผล ตรวจสิทธิ์ คำนวณ
↕ อ่าน / เขียนข้อมูล
🗄️
ฐานข้อมูล database
เก็บข้อมูลถาวร — ลูกค้า ออเดอร์ พนักงาน
โฮสต์ที่ไหน hosting services

แต่ละชั้นไปวางบนบริการที่ถนัดชั้นนั้น: Cloudflare Pagesรับหน้าเว็บ · Cloudflare Workersรันหลังบ้าน · Supabaseเก็บฐานข้อมูล. ทั้งหมดมีแพ็กเริ่มต้น ฟรีใช้ได้จริง พอโตค่อยจ่าย

ตัวอย่างจริงระบบจัดการร้านขนาดเล็ก deploy บนแพ็กฟรีของทั้ง 3 บริการ เปิดใช้ได้จริงโดยไม่เสียเงินสักบาทจนกว่าจะมีผู้ใช้/ข้อมูลเยอะมาก ค่อยอัปเกรดทีหลัง
เปรียบเทียบ
โฮสต์ = ที่เช่าร้านเครื่องที่เปิดตลอด 24 ชม. ให้คนแวะเข้าได้ตลอดเวลา ไม่ใช่คอมเราที่ปิดแล้วเว็บก็ดับ
ระวัง
ไม่จำเป็นต้องใช้ 3 บริการนี้เป๊ะ — เป็นชุดที่นิยมและฟรี. หลักคือ "แต่ละชั้นมีที่อยู่ของมัน" เลือกเจ้าไหนก็ได้
หน้าเว็บ
Cloudflare Pages
ฟรี
โฮสต์หน้าเว็บ (frontend)— ไฟล์หน้าจอ เสิร์ฟเร็วทั่วโลก ต่อโดเมนเองได้
หลังบ้าน
Cloudflare Workers
ฟรีเริ่มต้น
รันหลังบ้าน (backend)— โค้ดประมวลผล/API ตื่นเร็ว ไม่ต้องดูแลเซิร์ฟเวอร์เอง
ฐานข้อมูล
Supabase
ฟรีเริ่มต้น
เก็บฐานข้อมูล (database)— ตาราง Postgres + ระบบ login/ไฟล์ พร้อมใช้
ขั้นตอน deploy push → build → live

การขึ้นเว็บสมัยนี้แทบอัตโนมัติ: push(ส่งโค้ดขึ้น Git) → โฮสต์ build(แปลงโค้ดให้พร้อมใช้) ให้เอง → liveที่ลิงก์ทันที. แก้โค้ดแล้ว push ใหม่ เว็บก็อัปเดตตาม ไม่ต้องอัปไฟล์ทีละอัน

ตัวอย่างจริงแก้ข้อความบนปุ่มแล้วสั่ง deploy — ไม่กี่วินาทีถัดมาเปิดลิงก์เว็บจริงก็เห็นข้อความใหม่แล้ว ลูกค้าเห็นพร้อมกันทุกคนไม่ต้องส่งไฟล์ให้ใคร
เปรียบเทียบ
push=ส่งต้นฉบับเข้าโรงพิมพ์ · build=โรงพิมพ์จัดหน้า/พิมพ์ · live=วางขายบนแผง ทุกคนหยิบอ่านได้
push โค้ดbuild อัตโนมัติlive ที่ URL
$ git push
→ ส่งโค้ดขึ้น Git แล้ว
$ npx wrangler deploy
building... ▓▓▓▓▓▓▓▓ 100%
uploading... done
✓ Published to my-app.pages.dev
เว็บขึ้นออนไลน์แล้ว เปิดลิงก์ได้เลย
โดเมน domain · DNS

ตอน deploy จะได้ลิงก์ยาว ๆ ฟรี (เช่น my-app.pages.dev) ใช้ได้เลย. ถ้าอยากได้ชื่อสวย ๆ ของตัวเอง ก็ ซื้อโดเมน(เช่น myshop.com) แล้ว ชี้ DNSมาที่โฮสต์ — เหมือนบอกที่อยู่ว่าชื่อนี้วิ่งไปที่ไหน

ตัวอย่างจริงเว็บร้านใช้ลิงก์ฟรี myshop.pages.devได้ทันที. พอจริงจังซื้อ myshop.comปีละไม่กี่ร้อย → ตั้ง DNS ชี้มาที่ Pages ลูกค้าเห็นชื่อร้านสะอาดตา ดูน่าเชื่อถือ
เปรียบเทียบ
โดเมน = ป้ายชื่อร้านที่จำง่าย · DNS = แผนที่ที่บอกว่าป้ายชื่อนี้พาไปที่ตึกไหน (โฮสต์ของเรา)
ระวัง
หลังตั้ง DNS อาจรอ ไม่กี่นาทีถึงไม่กี่ชม.กว่าจะวิ่งทั่วโลก — ปกติ ไม่ต้องตกใจถ้ายังไม่ขึ้นทันที
ตั้งค่า DNS ที่ผู้ขายโดเมน
Type
Name
ชี้ไปที่
CNAME
www
my-app.pages.dev
CNAME
@
my-app.pages.dev
เพิ่ม 2 บรรทัดนี้ → myshop.comและ www.myshop.comจะวิ่งมาที่เว็บที่เรา deploy ไว้
Secrets / Environment secret keys · .env

ระบบมี กุญแจลับ (key/รหัส)สำหรับต่อฐานข้อมูล/ส่ง LINE/เรียก AI. กฎเหล็ก: ห้ามฝังในโค้ดหน้าบ้าน (frontend)เพราะใครก็เปิดดูได้ · ห้าม commit ขึ้น Gitเพราะติดประวัติถาวร — ต้องเก็บเป็น secretที่ฝั่งหลังบ้านเท่านั้น

ตัวอย่างจริงเผลอใส่ key ฐานข้อมูลลงในไฟล์หน้าเว็บแล้ว deploy — มิจฉาชีพเปิด "ดูโค้ดหน้าเว็บ" เจอ key เข้าฐานข้อมูลลบ/ขโมยข้อมูลลูกค้าได้ทันที. เก็บเป็น secret ฝั่งหลังบ้านถึงปลอดภัย
เปรียบเทียบ
secret = กุญแจร้านเก็บไว้กับเจ้าของหลังบ้าน ไม่แขวนไว้หน้าร้านให้ใครเดินผ่านก็หยิบได้
ระวัง
ไฟล์ .envที่เก็บ key ต้องใส่ใน .gitignoreเสมอ ไม่งั้นมันจะถูก push ขึ้นไปโดยไม่รู้ตัว
✗ ฝังในโค้ดหน้าบ้าน / commit ขึ้น gitใส่ key ตรง ๆ ในไฟล์หน้าเว็บ
const dbKey = "sk_live_8f3a92...";
ใครเปิดดูโค้ดก็เห็น— รหัสหลุด ข้อมูลพัง
✓ เก็บเป็น secret ฝั่งหลังบ้านตั้งค่าในแผงของโฮสต์ (หรือ wrangler secret put)
DB_KEY = •••••••••••• (ซ่อนไว้)
มีแค่หลังบ้านอ่านได้ไม่อยู่ในโค้ด ไม่ขึ้น git

เช็กก่อนกด deploy — 6 ข้อ

กวาดตาทั้ง 6 ข้อนี้ก่อนขึ้นจริงทุกครั้ง ส่วนใหญ่ที่พลาดคือข้อ secret กับ .gitignore

สรุป: ขึ้นเว็บ 1-2-3

1แยกชิ้นส่วน — รู้ว่ามี หน้าเว็บ · หลังบ้าน · ฐานข้อมูลเข้าใจโครงสร้าง
2วางแต่ละชั้นบนโฮสต์ — Pages · Workers · Supabase (เริ่มฟรี)เลือกที่อยู่
3push → build → liveได้ลิงก์ฟรีทันทีDeploy
อยากได้ชื่อสวย → ซื้อโดเมน + ชี้ DNS มาที่โฮสต์โดเมน
กุญแจ/รหัสทั้งหมด → เก็บเป็น secret ฝั่งหลังบ้าน ห้ามขึ้น gitปลอดภัย
อ่านต่อจากแหล่งอื่น (บทความภายนอก)
บทความภายนอกเป็นของผู้เขียนแต่ละเว็บ (ไม่ใช่ของเรา) · เปิดในแท็บใหม่
กลับห้องสมุดออกแบบ

อ่านต่อ — เรื่องที่เกี่ยวข้อง

เริ่มวันแรก — เตรียมเครื่องมือ สร้างระบบแรกของคุณ ความปลอดภัย กันข้อมูลรั่ว วิธีสั่ง AI สร้างระบบ (Prompt)