Please enable JavaScript.
Coggle requires JavaScript to display documents.
Docker - Coggle Diagram
Docker
-
ข้อดี
Portability ทดสอบ container ที่เดียวสามารถ deploy ได้ทุกที่ที่มี docker รันอยู่โดยไม่ต้องกลัวว่าจะไม่สามารถรันได้
Performance เนื่องจาก container ไม่ได้มีการบรรจุ OS เข้าไปด้วย นั่นหมายความว่า docker นั่นจะมีขนาดเล็กกว่า VM ทำให้ขนาดเล็ก, build ได้เร็วกว่า รวมถึงการรันได้มีประสิทธิภาพดีกว่าด้วย
Agility ด้วย portability และ performance ช่วยให้เหมาะสมกับการทำ agile process รวมถึงเหมาะกับการทำ CI/CD อีกด้วย ช่วยให้ compile, build, test ได้ดียิ่งขึ้น
Scalability เราสามารถสร้าง container ใหม่ ได้ตามความต้องการของ application ที่ scale ได้ โดยใช้เวลาอันสั้น
ข้อเสีย
เนื่องจากการรัน docker ไม่ได้รัน OS ใหม่ทั้งหมดเป็นเพียงแค่การจำลอง env ทำให้อาจเกิดการโจมตีที่ OS หลักผ่านทาง docker ได้และอาจกระทบกับ container ตัวอื่นๆ
เมื่อเราลง docker ใน window,mac จะมีการสร้าง VM ที่เป็น linux เพื่อมารัน docker อีกที ทำให้ประสิทธิภาพการทำงานอาจจะไม่สามารถทำได้สูงสุดเท่ารันบน linux
Docker ไม่เหมาะกับการจัดการ resource บนเครื่องใหญ่ๆ หรือไม่เหมาะกับโปรแกรมที่ออกแบบมาเพื่อทำงานบน VM
ต้องอาศัยเวลาการเรียนรู้ที่ค่อนข้างสูง แต่ทาง docker ก็มี tool ใหม่ๆ ออกมาช่วยเหลือให้ใช้งานได้ง่ายยิ่งขึ้น แต่การที่จะใช้งาน docker ได้อย่างช่ำชองจำเป็นต้องเรียนรู้ tools อื่นเพื่อใช้ในการประกอบด้วย
ความหมาย
Docker คือ เครื่องมือแบบ open-source ที่ช่วยจำลองสภาพแวดล้อม (environment) ในการรัน service หรือ server ตามหลักการสร้าง container เพื่อจัดการกับ library ต่างๆ