เปลืองเวลาเป็นวันๆไปทำไม? ในเมื่อใช้ Docker ช่วยได้!

Patcharaporn Auerach/ June 13, 2018/ Application/ 0 comments

Docker คือ “Software Container”

Docker นั้นถือเป็นหนึ่งใน “Software Container” ที่เป็นการสร้าง “สภาพแวดล้อมเฉพาะ” ให้กับซอฟต์แวร์ต่างๆ และทำให้ซอฟต์แวร์เหล่านั้น สามารถทำงานได้โดยไม่ไปรบกวนกับ ซอฟต์แวร์ตัวอื่นในระบบปฏิบัติการเดียวกัน  เราสามารถนำ Container ไปติดตั้งบนคอมพิวเตอร์หรือเซิร์ฟเวอร์เครื่องอื่นๆได้เลยทันที โดยที่โปรแกรมในนั้นยังทำงานได้ตามปกติ ไม่ผิดเพี้ยนไปจากเดิม

ยกตัวอย่างง่ายๆ.. เช่น ตอนที่เราเขียนเว็บๆนึงขึ้นมาบนเครื่องของเราเอง เราก็ปรับนู่นปรับนี่ setting ค่าต่างๆ โหลดนู่นนี่มาติด ปรากฏพอจะเอาของก้อนนั้นไปขึ้น Production บน Server เราก็ต้องโยกเอาก้อนทั้งหมดนั้นไป ต้องไปนั่ง Config ทุกอย่างบน Server ใหม่อีกที แถมบางทีทำไปทำมาเจ๊งค่ะ ของไม่ครบ ของขาด ของมันตีกัน ต้องมานั่งหาว่าติดอะไรไปบ้าง แค่คิดก็รู้สึกเหนื่อยจ้า

 หยุด! วงจรชีวิตยากๆ ด้วย Docker

ด้วยการใช้ “Docker” เข้ามาช่วยในการแพ็ค Software เหล่านี้ เพื่อให้อยู่ในรูปแบบของ Container หลังจากนั้นเราก็เอา Container ไปรันในเครื่องไหนก็ได้โดย Application ของเรายังทำงานได้ปกติ ไม่ว่าจะเอาไปรันบนเครื่อง Development หรือบน Production Server ก็ตาม

 

 เสกงาน 1 วัน ให้เหลือแค่ 1 ชั่วโมงด้วย

จริงๆบนโลกใบนี้ยังมี Software Container ตั้งหลายเจ้าให้เลือกใช้ แต่ที่ Docker ได้รับความนิยมมากที่สุด นั่นก็เพราะมันใช้งานได้ง่ายด้วย 3 Steps Build, Ship and Run มีประสิทธิภาพสูง แถมยังมี Community ที่ใหญ่มาก ทำให้มี Q&A เยอะแยะมากมายตามมา ติดปัญหาอะไรก็ไม่ต้องลอยเคว้งคว้างกลางทะเลอยู่คนเดียว

(Build) Docker File : คือการที่เราเอา sourcecode + config ที่รวบรวมคำสั่งทุกอย่าง ที่ใช้ในการ run แอพ และนำไปสร้างเป็นไฟล์ Docker Image ออกมา
(Ship) Docker Image : คือการนำไฟล์ Docker Image ย้ายไปวางไว้ที่อื่น ที่ต้องการนำแอพไปติดตั้ง
(Run) Docker Container  : การ Run Docker Image เกิดเป็น Container เพื่อให้ได้ Application ที่สามารถเรียกใช้งานได้ทันที (โดยมันจะทำงานได้ปกติ)

 

 ประโยชน์ที่ได้จากการใช้ Docker

(1) Save Time :สามารถลงโปรแกรมเพื่อใช้งาน ได้ภายในไม่กี่วินาทีเท่านั้น
(2) Save Cost : ประหยัดค่าใช้จ่ายมากขึ้นเพราะใช้ทรัพยากรน้อยลง
(3) Save Data Storage : ประหยัดพื้นที่เก็บ และติดตั้งระบบได้รวดเร็วกว่าการทำ VM ถึง 90%
(4) Easy to Scale : สามารถขยายระบบได้ง่าย เพื่อรองรับจำนวนผู้ใช้งานที่มากขึ้น และยังสามารถดึง Resource ของเครื่องมาใช้ได้เต็มประสิทธิภาพ ซึ่งต่างกับ VM ที่มักจะติดขีดจำกัดของเครื่อง
(5) Environment Managing : ด้วยรูปแบบที่เป็น Image สำเร็จรูป  ทำให้เราสามารถติดตั้งโปรแกรม หรือตั้งค่าระบบ ได้ภายในเวลาไม่กี่วินาที และเพียงแค่ไม่กี่คำสั่งเท่านั้น
(6) Portability : ทำให้ย้ายไประบบ IT infrastructure อื่นๆได้ง่าย  ไม่ต้องเสียเวลา Setup โปรแกรมใหม่ทีละเครื่อง และช่วยลด Error ที่อาจเกิดจาก การนำระบบขึ้น production
(7) Reduce Time-to-Market : ช่วยลดเวลาการนำแอพพลิเคชันต่างๆเข้าสู่ตลาด
(8) Community Hub : ได้รับการพัฒนาและอัพเดทฟีเจอร์ใหม่เรื่อยๆ มี Community สำหรับแลกเปลี่ยนข้อมูลต่างๆมากมาย

 

 ใครที่เหมาะกับการใช้ Docker?

เนื่องจากการใช้ Container Software ไม่ใช่เรื่องที่ยาก หรือไกลตัวอีกต่อไป อีกอย่างคือการนำมันมาใช้นั้น ล้วนมีแต่ข้อดีและเป็นประโยชน์ ดังนั้นจึงไม่ใช่แค่เรื่องของ Developer หรือ System Admin อีกต่อไป แต่องค์กรเองต้องเข้าใจและเห็นความสำคัญของเทคโนโลยีนี้เช่นกัน

 

 เริ่มศึกษายังไงดี?

การศึกษา Docker นั้น โดยเราสามารถหาได้ทั่วไปตามอินเตอร์เน็ตเลยค่ะ แต่การศึกษาและนำมันมาใช้อย่างถูกต้องและปลอดภัย นั้นก็ค่อนข้างต้องใช้เวลาทำความเข้าใจพอสมควร แต่หากใครยังงงๆว่าการเอา Docker ต่างกับ VM แบบเดิมๆที่เราใช้ยังไง แล้วอยากเริ่มต้นเองง่ายๆยังไง แนะนำให้โหลด E-Book ที่ทาง Docker ได้จัดทำไว้ เอาไปลองอ่านกันได้เลยค่ะ  ที่นี่

โดยเนื้อหาใน E-Book จะประกอบไปด้วย

  • ทำไม Container ถึงไม่ใช่ VM
  • เราสามารถนำ Container และ VM มาใช้ร่วมกันได้อย่างไร
  • การใช้ Container บน Physical Server และ Virtual Machine นั้นแตกต่างกันอย่างไร
  • เริ่มต้นใช้งาน Docker และ Container

และเนื่องจาก OpenLandscape เอง ได้เล็งเห็นถึงความสำคัญของการนำ Container Software มาใช้กับธุรกิจขององค์กร  เราจึงเปิดบริการ “Professional Service” เพื่อรับปรึกษา ติดตั้งและดูแลให้ เป็นสัญญาแบบชัดเจน ซึ่งสามารถตกลงราคาและขอบเขตการดูแลได้ก่อนการให้บริการค่ะ หากสนใจสามารถติดต่อสอบถาม พูดคุยกันก่อนได้เลยค่ะ ที่ OpenLandscape Services Support

 

Source : [1] [2] [3] [4]

ติดตามข่าวสารใหม่ๆ หรือข้อมูลน่ารู้อีกมากมายได้ที่

  OpenLandscape Fanpage | https://www.facebook.com/openlandscapecloud/
  OpenLandscape Twitter | https://www.twitter.com/olscloud/
  OpenLandscape Cloud | https://openlandscape.cloud/

 

 

จบการศึกษาจากคณะเทคโนโลยีสารสนเทศ พระจอมเกล้าลาดกระบัง
มีความสนใจด้านเทคโนโลยี และมีความเชื่อว่า หากเราสามารถวางตัวเอง
ให้ก้าวทันเทคโนโลยีอยู่เสมอจะช่วยให้เราได้พัฒนาทั้งชีวิตของตนเอง
ครอบครัว และยังเป็นประโยชน์ต่อสังคมได้

Leave a Comment

Your email address will not be published. Required fields are marked *

You may use these HTML tags and attributes: <a href="" title=""> <abbr title=""> <acronym title=""> <b> <blockquote cite=""> <cite> <code> <del datetime=""> <em> <i> <q cite=""> <s> <strike> <strong>
*
*