Docker เป็น engine ที่รันบน Linux ตัวนึงที่จะจําลองสภาพแวดล้อมของเครื่อง server ขึ้นมา คล้ายๆกับพวก VirtualBox, VMWare หรือ Virtual Machine ซึ่ง Docker จะแตกต่างจาก VM ตัวอื่นๆคือ **จะทําการจําลองสภาพแวดล้อมของ server ขึ้นมาบน OS เดิม **แต่ VM อื่นๆ จะจําลองระบบขึ้นมาทั้ง OS เลย ดังรูป
จะเห็นว่า VM จําลองขึ้นมาทั้ง OS เลย ทําให้ มี Process ที่รันขึ้นมาโดยไม่จําเป็น ในขณะที่ Docker จะแยก Guest OS ออกมา โดยจะเรียกว่า Container ซึ่งในแต่ละ Container คือการจําลอง Environment สำหรับ 1 Service เท่านั้น(ดูภาพประกอบ) ทําให้มีขนาดเล็ก สามารถรันขึ้นมาได้เร็ว และไม่เปลืองทรัพยากรณ์ของเครื่องเมื่อเที่ยบกับ VM
สําหรับในหัวข้อนี้เราจะมาขยายความ Docker Registry กันซักนิดครับเนื่องจากมันเป็นจุดเด่นของ Docker ซึ่งมันเป็นแนวคิดที่จะจัดการ Docker Image ให้เข้าถึงง่าย สะดวกและรวดเร็ว โดย Docker Registry เป็นที่สําหรับเก็บ Docker Image ที่เราสร้างขึ้น หรือคนอื่นสร้างขึ้น เมื่อเราต้องการจะใช้งาน Docker Image ตัวไหนเราก็ pull มาใช้งานได้เลยเราก็จะได้ Environment ตามนั้นเปะๆ ลองเข้าไปดู Docker Registry ได้ครับที่นี่ครับ hub.docker.com/ สําหรับในเว็บนี้เป็นของ docker เอง ซึ่งมี Docker image ที่คนอื่นๆสร้างไว้มากมายรวมถึง OFFICIAL REPOSITORY (เป็น Docker image ของเจ้าของโปรแกรมทําขึ้นมาเอง)
จริงๆแล้ว Docker เป็น tool ที่อเนกประสงค์มากๆ สามารถนําไปประยุกต์ใช้งานต่างๆมากมาย แต่ที่เห็นได้ชัดเจนก็คือ มันจะช่วยให้เราจัดการ Environment ของ server ได้ง่ายมาก และรวดเร็ว ผมจะยกตัวอย่างนะครับ ถ้าเราจะสร้างเว็บขึ้นมาเว็บนึง สิ่งแรกที่เราต้องทําคือลงโปรแกรมต่างๆ เช่น Apache, nginx, mysql ฯลฯ เมื่อลงโปรแกรมเสร็จ เราก็จะต้องมา Config ค่าต่างๆเพื่อให้มันใช้งานกับเว็บเราได้ ต่อมาเรามีความจําเป็นที่จะต้องเปลี่ยนเครื่อง Server อันเนื่องมาจาก ต้องการเปลี่ยนไปใช้ Server ที่แรงขึ้นเพื่อรองรับคนได้เยอะขึ้น หรือ Server ตัวเก่ามีปัญหา เมื่อ server ตัวใหม่มา สิ่งที่เกิดขึ้นคือ เราจะต้องมานั่งลงโปรแกรมใหม่ ต้องมา Config ค่าต่างๆใหม่ ซึ่งกระบวนการตรงนี้มันค่อนข้างในเวลา Docker จะมาช่วยในการจัดการตรงนี้ โดยเมื่อเราเปลี่ยนเครื่อง Server หรือย้ายเว็บเราไปรันบน Server เครื่องใดๆก็แล้วแต่ เราไม่ต้องมาลงโปรแกรมใหม่ ไม่ต้องมา Config ค่าใหม่ เราสามารถที่จะรันเว็บของเราทั้งเว็บโดยใช้เพียงคําสั่งเดียว ซึ่งมันจะประหยัดเวลาไปได้มาก และช่วยลดความผิดพลาดที่เกิดจากการ config ต่างๆได้
“บนเครื่องผมมันรันได้นะ” คําพูดนี้จะหายไป ถ้าคุณใช้ Docker
ในบทความตอนที่แล้ว "Vue.js เริ่มต้น ตอน1 (สร้าง Project)" ผมได้อธิบายถึงแนวทางการพัฒนาเว็บด้วย Vue.js ในแบบต่างๆ และการสร้าง Project ด้วย Vue-cli ถ้าใครยังไม่ได้อ่านกลับไปอ่านก่อนเนื่องจากเนื้อหาในบทความนี้เป็นเนื้อหาที่ต่อเนื่องจากบทความที่แล้ว
วิธีหาขนาดของข้อความ ว่ามีขนาดความกว้าง และความสูงกี่ Pixel ทําได้ด้วยตัวอย่าง Function นี้
สวัสดีครับ วันนี้ผมเจอกรณีที่คนเข้าเว็บมาด้วย Domain อื่นๆ ที่ไม่ใช่ของเรา แต่เป็นหน้าเว็บเราเฉยเลย ทําให้ Domain อื่นๆของใครก็ไม่รู้ สวมรอยเป็นเว็บเราได้อย่างเช่นกรณีนี้