docker

จากความเข้าใจ docker คือโปรแกรมที่มาช่วยในการติดตั้งแอปพลิเคชันที่ใช้งานได้อย่างรวดเร็ว โดยจะจำลองระบบปฎิบัติการของเซิร์ฟเวอร์คล้ายกับวิธีการที่เครื่องเสมือนจำลอง โดยจะสามารถจัดการทำงานผ่านทาง docker ได้ ซึ่งจะประกอบไปด้วย

  • Docker image
    คือ Application ที่มีการ Configuration เอาไว้แล้ว เกิดจากการ build ไฟล์ Dockerfile ขึ้นมาเป็น image

  • Docker container
    คือ container จะถูกสร้างมาจาก Docker Image เกิดเป็น container จะได้ Application ที่สามารถเรียกใช้งานได้ทันที

  • Docker registry
    คือ Docker Image ที่ถูกสร้างแล้วนำไปเก็บรวบรวมไว้บน server (ลักษณะเดียวกับการเก็บ Source Code ไว้บน Github)

ทำไมถึงต้องใช้ docker?

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