Deploy คืออะไร มือใหม่เข้าใจง่ายใน 5 นาที
Deploy คืออะไร อธิบายแบบเข้าใจง่ายว่าคือการเอาเว็บจากในเครื่องขึ้นไปวางบนเซิร์ฟเวอร์ให้คนทั้งโลกเข้าถึงได้ ต่างจาก localhost ยังไง เริ่มยังไงสำหรับมือใหม่
คุณเขียนเว็บเสร็จแล้ว มันรันสวยงามในคอมของคุณ แต่พอจะส่งให้เพื่อนดู กลับพบว่าเพื่อนเปิดไม่ได้เลย เพราะเว็บนั้นยังอยู่แค่ในเครื่องคุณคนเดียว นี่คือจุดที่คำว่า Deploy เข้ามามีบทบาท พูดง่าย ๆ Deploy คือการเอางานจากในเครื่องเราขึ้นไปวางบนเซิร์ฟเวอร์ ให้คนทั้งโลกเข้าถึงได้ผ่านลิงก์ บทความนี้จะอธิบายให้มือใหม่ที่ไม่มีพื้นฐานเข้าใจแบบง่ายที่สุด
Deploy คืออะไร แบบเข้าใจง่าย
ลองนึกภาพว่าคุณทำอาหารอร่อยมากในครัวที่บ้าน แต่ตราบใดที่มันยังอยู่ในครัว ก็มีแค่คนในบ้านได้กิน การ deploy ก็เหมือนการยกเมนูนั้นไปเปิดเป็นร้านอาหาร ให้ลูกค้าจากที่ไหนก็เดินเข้ามาสั่งได้ งานของคุณเปลี่ยนจาก "ของที่ดูได้คนเดียว" กลายเป็น "ของที่ทุกคนเข้าถึงได้"
ในโลกของเว็บก็เช่นกัน โค้ดที่คุณเขียนในคอมยังเปิดดูได้แค่คุณคนเดียว การ deploy คือการเอาโค้ดนั้นไปวางไว้บนเครื่องคอมพิวเตอร์กลางที่เปิดตลอด 24 ชั่วโมง แล้วแจกลิงก์ให้คนอื่นเข้ามาดูได้
Deploy ต่างจากรันในเครื่อง (localhost) ยังไง
ตอนพัฒนาเว็บ เรามักเห็นที่อยู่แปลก ๆ อย่าง localhost:3000 ในเบราว์เซอร์
- localhost คือเว็บที่รันอยู่ในเครื่องเราเท่านั้น คำว่า local แปลว่า "ในพื้นที่" มีแค่คอมเครื่องนั้นเปิดดูได้ ปิดคอมเมื่อไหร่เว็บก็หายไป เหมือนซ้อมทำอาหารในครัวตัวเอง
- เว็บที่ deploy แล้วคือเว็บที่อยู่บนเซิร์ฟเวอร์ออนไลน์ ใครก็เข้าได้จากทั่วโลก เปิดตลอดเวลาแม้เราจะปิดคอมไปแล้ว เหมือนร้านที่เปิดขายจริง
พูดสั้น ๆ localhost ไว้ทดลองและพัฒนา ส่วน deploy ไว้เปิดให้คนจริงใช้งาน
ขั้นตอนการ Deploy คร่าว ๆ
กระบวนการ deploy เว็บทั่วไปมี 4 ขั้นหลัก ๆ
- เขียนโค้ด — สร้างเว็บในเครื่อง ทดสอบบน localhost จนพอใจ
- Build — แปลงโค้ดที่เราเขียนให้กลายเป็นไฟล์ที่เบราว์เซอร์เข้าใจและทำงานเร็ว เหมือนการเตรียมวัตถุดิบให้พร้อมเสิร์ฟ
- อัปขึ้น Hosting — ส่งไฟล์ที่ build แล้วขึ้นไปวางบนบริการที่รับฝากเว็บ
- ได้ URL — ระบบจะให้ลิงก์กลับมา เอาไปแชร์ให้ใครก็เปิดได้ทันที
บริการ Deploy ยอดนิยม
สมัยนี้มีบริการที่ทำให้การ deploy ง่ายมาก แทบไม่ต้องตั้งค่าเซิร์ฟเวอร์เองเลย ที่มือใหม่นิยมใช้ได้แก่
- Vercel — เหมาะกับเว็บสมัยใหม่ เชื่อมกับ GitHub แล้วมันจะ deploy ให้อัตโนมัติทุกครั้งที่เราอัปโค้ด มีแพ็กเกจฟรี
- Netlify — ใช้งานง่ายพอ ๆ กัน ลากไฟล์เว็บไปวางก็ deploy ได้เลย เหมาะกับเว็บนิ่ง ๆ มีฟรีเช่นกัน
ทั้งสองเจ้าออกแบบมาให้คนไม่มีพื้นฐานเซิร์ฟเวอร์ก็ใช้ได้ กดไม่กี่ปุ่มเว็บก็ออนไลน์
คำที่เจอบ่อยตอน Deploy
ระหว่างทางจะเจอศัพท์พวกนี้ รู้ความหมายคร่าว ๆ ไว้ก็พอ
- Hosting — บริการรับฝากเว็บของเราไว้บนเครื่องที่เปิดตลอด เหมือนพื้นที่เช่าเปิดร้าน
- Server — คอมพิวเตอร์ที่เปิดค้างไว้คอยส่งเว็บให้คนที่เข้ามาดู เหมือนพนักงานที่คอยเสิร์ฟตลอดเวลา
- Domain — ชื่อเว็บที่จำง่าย เช่น
aiunlock.coเหมือนชื่อร้านและที่อยู่ให้ลูกค้าหาเจอ - Build — ขั้นตอนแปลงโค้ดให้พร้อมใช้งานจริงก่อนอัปขึ้นเว็บ
มือใหม่เริ่ม Deploy ยังไง
ถ้าอยากลอง deploy เว็บแรกของตัวเอง แนะนำเส้นทางนี้
- เอาโค้ดเว็บของคุณขึ้นเก็บไว้บน GitHub ก่อน ถ้ายังไม่รู้จัก อ่าน GitHub คืออะไร ประกอบได้
- สมัครบัญชี Vercel หรือ Netlify แล้วเชื่อมกับ GitHub
- เลือก repository ของเว็บ แล้วกดปุ่ม Deploy
- รอสักครู่ ระบบจะส่งลิงก์กลับมา เอาไปอวดเพื่อนได้เลย
ครั้งแรกอาจตื่นเต้นนิดหน่อย แต่พอทำสำเร็จแล้วจะติดใจ เพราะเห็นงานตัวเองอยู่บนอินเทอร์เน็ตจริง ๆ
สรุป
Deploy คือการเอาเว็บจากในเครื่องเราขึ้นไปวางบนเซิร์ฟเวอร์ ให้คนทั้งโลกเข้าถึงได้ผ่าน URL ต่างจาก localhost ที่เปิดดูได้แค่ในเครื่องเรา ขั้นตอนคร่าว ๆ คือ เขียนโค้ด → build → อัปขึ้น hosting → ได้ลิงก์ ยุคนี้มีบริการอย่าง Vercel และ Netlify ที่ทำให้มือใหม่ deploy ได้ง่ายมากและฟรี ลองเอาเว็บเล็ก ๆ ของคุณขึ้นออนไลน์ดูสักครั้ง แล้วคุณจะเข้าใจคำนี้อย่างถ่องแท้
คำถามที่พบบ่อย
Deploy เว็บต้องเสียเงินไหม?
ไม่จำเป็นครับ บริการอย่าง Vercel และ Netlify มีแพ็กเกจฟรีที่เพียงพอสำหรับเว็บส่วนตัวหรือโปรเจกต์ฝึกหัด จะเริ่มเสียเงินก็ต่อเมื่อมีคนเข้าเยอะมากหรือต้องการฟีเจอร์ขั้นสูง
Deploy กับ upload ไฟล์ต่างกันยังไง?
การอัปโหลดไฟล์เฉย ๆ คือแค่ก๊อบไฟล์ไปวางไว้ ส่วน deploy คือกระบวนการเอาโค้ดไปเตรียม ประมวลผล และเปิดให้เข้าถึงผ่าน URL จริง ๆ ให้เว็บทำงานได้สมบูรณ์ ไม่ใช่แค่วางไฟล์ทิ้งไว้เฉย ๆ