ขั้นตอนการติดตั้ง Ruby on Rails บน Ubuntu
วันนี้จะมานำเสนอ วิธีการติดตั้ง Ruby on Rails บนเครื่อง Ubuntu ครับ หลังจากใช้เวลาลองผิดลองถูก นับแรมปี ติดตั้งมาก็หลายรอบแล้ว ก็เลยตัดสินใจทำเป็นบทความซะเลย เผื่อจะมีผู้ที่ผ่านมา สนใจ หรือกำลังหาวิธีการติดตั้งอยู่ ก็ทำตามขั้นตอน ตามนี้ได้เลยครับ
Step 1 : Install Git
ขั้นแรก จงทำการติดตั้ง git ซะ (git คือ version control)
หลังจากนั้น ก็ทำการ เซ็ทอัพ git โดยเปลี่ยน “name” เป็นชื่อของผู้อ่าน และ “email” เป็นอีเมล์ผู้อ่านซะ อันนี้ถ้าลืมอีเมล์หรือชื่อตัวเอง ก็ช่วยไม่ได้นะ :>
ลองตรวจสอบ ด้วยคำสั่ง
ผลลัพธ์จะต้องได้เป็นชื่อที่ผู้อ่านได้ทำการต้้งไว้ และลองตรวจสอบด้วยคำสั่งนี้ เพื่อแสดงผลลัพธ์ของอีเมล์ที่ตั้งไว้
ผลลัพธ์จะได้จะเป็นอีเมล์ที่ได้ทำการตั้งค่าไว้ก่อนหน้านี้นะ มิเช่นนั้น แสดงว่าตั้งค่าผิด กลับไปทำดูใหม่นะ
Step 2 : Install RVM
ติดตั้ง RVM คือ Ruby Version Manager เป็นเครื่องมือสำหรับบริหารจัดการเวอร์ชันสำหรับ Ruby ซึ่งช่วยให้ผู้อ่านสามารถเปลี่ยนเวอชั่น Ruby หรือไปใช้ในโปรเจคอื่นๆทำได้ง่าย (อีกตัวที่ได้ความนิยมไม่แพ้กัน นั่นก็คือ rbenv แต่ว่าส่วนตัวยังไม่เคยใช้ ก็เลยไม่รู้จะบอกยังไง ฮ่ะ ฮ่า หากผู้อ่านท่านใด ต้องการจะลงด้วย rbenv ก็ข้ามขั้นตอนนี้ไปได้)
เมื่อเจอข้อความประมาณนี้ แสดงว่ากำลังจะติดตั้ง RVM เสร็จสมบูรณ์แล้ว แต่ยัง.. ช้าก่อน อย่าเพิ่งชะล่าใจนัก
จะมีข้อความบอกไว้ ว่า การติดตั้ง เกือบจะ เสร็จแล้ว เห็นไหมละ ว่ายังไม่เสร็จนะ ดูให้ดีๆด้วย หากต้องการสั่งให้ RVM ทำงาน ให้ สั่ง run source/home/devahoy/.rvm/scripts/rvm
นั่นก็คือ path ที่อยู่ที่เครื่องของผู้อ่านนั่นเอง จัดการสั่งรันคำสั่ง เพื่อให้ RVM ทำงาน โดย path ที่อยู่แต่ละเครื่องก็จะแตกต่างกันไป
ทดสอบ
ผลลัพธ์ที่ได้ ต้องเป็นแบบนี้ (ณ เวลาที่เขียนบทความ คือ version 1.25.15) หากได้เวอร์ชั่นที่สูงกว่า ก็ไม่ต้องแปลกใจไป
ทดสอบ ดู requirements ของ rvm (ขั้นตอนนี้ rvm จะทำการ check ว่า มันยังขาด library อะไรที่จำเป็นอีกบ้าง)
ผลลัพธ์จะได้หน้าตาประมาณนี้ ตัวโปรแกรม แล้วแต่เครื่องของผู้อ่าน หากบางเครื่องมีการติดตั้ง library/dependencies อื่นไปแล้ว ก็จะไม่จำเป็นต้องติดตั้งอีก
แต่หากว่าไม่มีอะไรขาด ก็จะขึ้นประมาณนี้
Step 3 : Install Ruby
ขั้นตอนนี้ก็ติดตั้ง Ruby ผ่านทาง RVM หากต้องการรู้ว่า RVM สามารถติดตั้งอะไรได้บ้าง ใช้คำสั่ง
จะได้รายชื่อโปรแกรม และเวอร์ชั่นที่ผู้อ่านจะสามารถติดตั้งได้
ติดตั้ง ruby (หากไม่กำหนดเลขเวอร์ชั่น ก็จะเป็นการติดตั้งเวอร์ชั่นล่าสุด)
หากขึ้นข้อความแบบข้างล่างนี้ ให้กด Q จากนั้นนั่งรอการติดตั้ง ซักพักนึงประมาณ 5 นาที หรือว่าขึ้นอยู่กับความเร็วเนตก็ไม่แน่ใจนัก
เมื่อติดตั้งเสร็จ ก็เลือกใช้ เวอร์ชั่นของ Ruby ที่ต้องการ ผมเลือกใช้ ruby version 2.1.0
หากมีปัญหา ขึ้นดังข้างล่าง
ให้แก้ไขโดย เปิด Terminal (Ctrl + Alt + T) เลือก Edit -> **Profile Preferences ** จากนั้นคลิ๊กแท็ป Title and Command ในส่วน Command เลือก Run command as a login shell ปิดและเปิด Terminal ใหม่อีกครั้ง
ทดสอบคำสั่ง use อีกครั้ง
หากไม่มี error จะได้ผลลัพธ์ประมาณนี้
ตอนนี้ติดตั้ง ruby เวอร์ชั่นล่าสุดเรียบร้อยแล้ว ต่อไป ก็ต้องบอก System ให้รู้ซะว่าผู้อ่านจะใช้เวอร์ชั่นนี้แหละ เป็นค่า default ไม่บอกมัน มันไม่รู้นะ :)
ทดสอบ
จะได้ผลลัพธ์ดังนี้ เป็นอันเสร็จสิ้นการติดตั้ง ruby
Step 4 : Install Rails
Rails ใช้เวลาในการติดตั้งนานพอสมควรเลย น่าจะนานกว่า ruby อีก (หรือว่าอาจจะขึ้นอยู่กับความเร็วอินเตอร์เนต ไม่แน่ใจ เพราะมีการดาวน์โหลดพวก dependencies ต่างๆด้วย)
เพิ่ม javascript runtime โดยในที่นี้ ใช้ nodejs ซึ่งใช้การติดตั้งแบบ PPA เลย เพื่อความสะดวก และมีการอัพเดทอยู่เสมอ นะ จะบอกให้
หาก ผู้อ่านไม่ได้ทำการติดตั้ง nodejs เวลาสั่งรันเซิฟเวอร์ อาจจะมีปัญหาได้
Step 5 : First App
ตอนนี้ขั้นตอนการติดตั้ง Ruby และ Rails ก็เรียบร้อยแล้ว ต่อไปจะลองให้ผู้อ่านได้ทำการทดสอบสร้าง application แรก ด้วย Ruby on Rails กันเลย การสร้าง application จะใช้คำสั่ง rails new ตามด้วยชื่อ application ตามนี้
ตัว Rails จะเริ่มทำการสร้างไฟล์ให้เราแล้ว
รอ bundle install ซักครู่ จนขึ้นข้อความข้างล่าง
ตอนนี้ server ของผู้อ่านก็ติดตั้งพร้อมแล้ว ต่อไปสั่ง run server เพื่อจะดูผลลัพธ์
rails s คือคำสั่งแบบสั้น เพื่อสั่งให้ เซิฟเวอร์ เริ่มทำงาน
จะปรากฎข้อความด้านล่าง แสดงว่า รันเซิฟเวอร์ได้แล้ว
ลองเข้า http://0.0.0.0:3000 หรือ http://localhost:3000 ผลลัพธ์จะได้แบบนี้ เป็นอันเรียบร้อย
References :
- Authors
-
Chai Phonbopit
เป็น Web Dev ในบริษัทแห่งหนึ่ง ทำงานมา 10 ปีกว่าๆ ด้วยภาษาและเทคโนโลยี เช่น JavaScript, Node.js, React, Vue และปัจจุบันกำลังสนใจในเรื่องของ Blockchain และ Crypto กำลังหัดเรียนภาษา Rust