วันอาทิตย์ที่ 9 กุมภาพันธ์ พ.ศ. 2557

Vagrant + puPHPet, ติดตั้ง Web Server สำหรับนักพัฒนาเว็บ ง่าย…ง่ายจริงๆ!!!

จะว่าไปแล้วนักพัฒนาเว็บยุคสมัยนี้โชคดี มีทางเลือกหลายๆ ทางในการที่จะจำลองเครื่อง Web Server ขึ้นมาสำหรับการพัฒนาเว็บฯ ไม่ว่าจะเป็นการ ติดตั้งบนเครื่องตัวเองด้วย package สำเร็จรูปอย่าง XAMPP, MAMP ฯลฯ หรือ จะลงบนเครื่อง VM (Virtual Machine) แทน กรณีนี้ก็ต้องออกแรงติดตั้ง package ต่างๆ เองอีก
แล้วถ้าเป็นนักพัฒนามือทองที่ต้องพัฒนาหลายๆ โปรเจคเข้าไปอีก แต่ละโปรเจคอาจต้องการ Dev Environments ที่ไม่เหมือนกัน ก็ต้องมานั้นเซต ปิดนู้น เปิดนี้ กันให้ปวดหัว (ในกรณีลงบน Local)
ทางออกก็เลยต้องหนีไปพัฒนาบน VM แทน แต่มันก็ยังไม่สะดวกสบายนักอยู่ดี เพราะนักพัฒนาก็ต้องมานั้นเซตนู้นนั้นนี้เองอยู่ดีนั้นแหละ เราเลยต้องใช้ Vagrant เข้ามาช่วยอีกแรง

Vagrant คืออะไร?

Vagrant เป็น tool ที่ช่วยให้เราสามารถติดตั้ง Virtual Machine บนเครื่องของเราได้อย่างง่ายดาย ตัดขั้นตอนที่นักพัฒนาต้องทำเองไปหลายอย่าง เช่น download iso ติดตั้ง OS ฯลฯ แถมยังสามารถ sync folder ในการพัฒนาให้เอง (ไม่ต้องเสียเวลา upload file ขึ้นเครื่อง VM)

โดยก่อนการใช้งาน Vagrant ในเครื่องเราต้องลง VirtualBox เอาไว้ก่อนแล้ว (จริงๆ Vagrant รองรับ VMWare ด้วย แต่ VirtualBox มันฟรีครับ) สามารถ Download VirtualBox ได้ที่ https://www.virtualbox.org/wiki/Downloads และอ่านวิธีติดตั้งที่ https://www.virtualbox.org/wiki/Documentation
หลังจากนั้นก็ Download Vagrant ที่ http://www.vagrantup.com/downloads.html
เมื่อติดตั้ง Vagrant ลงเครื่องเราเรียบร้อยแล้ว อยากให้อ่านและลองทำตามขั้นตอน ในหัวข้อ Getting Started ที่ทางเว็บ Vagrantup.com เตรียมเอาไว้ให้ก่อนนะครับ เป็น tutorial ที่ดีเลยทีเดียว
เมื่อลองเล่นจนเกิดความชำนาญ เราสามารถไป add boxes จากที่ http://www.vagrantbox.es/

puPHPet คืออะไร?

เป็น Web ที่ช่วยในการสร้างไฟล์ Vagrantfile script สำหรับติดตั้ง package ต่างๆ ที่จำเป็นสำหรับการพัฒนาเว็บ

โดยเข้าไปที่ https://puphpet.com/ แล้วจัดการเลือก option ตามที่เราต้องการ เสร็จแล้วก็ download ,จัดการแตกไฟล์ แล้ว นำไฟล์ และ โฟลเดอร์ที่ได้ ไปวางไว้ที่โฟลเดอร์ ที่เราต้องการจะติดตั้ง (ถ้าได้ลองทำตาม Getting Started มาจะเข้าใจดี) จากนั้นก็แค่สั่ง vagrant up แล้วก็รอๆๆ จนมันติดตั้ง และ อัพเดท ให้เราจนเสร็จ พร้อมใช้งาน
โพสท์นี้ขอแบบสั้นๆ ไม่ละเอียดนะครับ ช่วงนี้ไม่ว่างจริงๆ ^^’

สวัสดีครับ