🗃️ Docker Registry
แหล่งเก็บ Docker Images ที่ใหญ่ที่สุดในโลก 😍
🤠 จาก บทความที่ 3 กับ บทความที่ 4 ที่ได้ลองเล่น 🐳 Docker
เราจะพบว่ามันมีขั้นตอนหนึ่งที่พูดถึง 🗃️ Docker Registry
รวมอยู่ด้วย ซึ่งจะไม่พูดถึงก็ไม่ได้ เพราะมันเป็นหนึ่งในหัวใจของพี่วาฬน้ำเงินของเราเลยทีเดียว ดังนั้นในบทความนี้เราจะมาลงรายละเอียดกับ 🗃️ Docker Registry
กันฮ๊าฟ
แนะนำให้อ่าน บทความนี้เป็นส่วนหนึ่งของคอร์ส 🐳 Docker ที่จะสอนตั้งแต่เรื่องพื้นฐานยันระดับ master กันไปเลย ซึ่งเนื้อหาทั้งหมดจะทำให้เพื่อนๆเข้าใจและใช้งาน Docker โดยใช้ Kubernetes เป็น และสามารถสร้าง Cluster เพื่อนำไปใช้งานบน Cloud Providers ต่างๆได้ และทั้งหมดที่พูดมานั้นอ่านได้ฟรีเลย ดังนั้นหากสนใจก็สามารถกดเจ้าวาฬสีน้ำเงินเพื่อไปอ่านตั้งแต่เริ่มต้นได้ครัช 🤠
🚨 เท้าความเดิม
จาก บทความที่ 3 ตอนที่เราใช้คำสั่ง docker pull
หรือ docker run
ตัวพี่วาฬ 🐳 Docker
จะไปตรวจว่าในเครื่องของเรามี 🖼️ Container Image
นั้นๆอยู่หรือเปล่า ซึ่งหากไม่มีเขาก็จะไปดาวโหลดมาจาก 🗃️ Docker Registry
มาเก็บไว้ในเครื่องตามรูปด้านล่าง
🤠 ตรงจุดนี้จะทำให้เรารู้คร่าวๆละว่า 🗃️ Docker Registry
คือแหล่งเก็บ 🖼️ Container Images
ที่อยู่บนอินเตอร์เน็ตนั่นเอง ดังนั้นเราจะลองซูมเข้าไปดูว่าข้างในนั้นมันเป็นยังไงบ้างดีกว่า
🗃️ Docker Registry
ถ้าจะอธิบายตรงนี้ ดช.แมวน้ำ อยากให้จินตนาการถึงตอนที่เราเขียนโปรแกรม แล้วอยากเอา package ของคนอื่นที่อยู่บนอินเตอร์เน็ตมาใช้ เราก็จะไปดาวโหลด package พวกนั้นมาจากส่วนกลางของแต่ละภาษา เช่น nuget
, nodejs
, pip
, bower
บลาๆ มาติดตั้งที่โปรเจคของเราชิมิ
จากแนวคิดที่ว่ามาเจ้า 🐳 Docker
ก็มีตัวกลางที่เอาไว้เก็บ 🖼️ Container Images
ของทุกคนทั่วโลกเช่นกัน ดังนั้นเมื่อมีคนสร้าง 🖼️ Container Image
แล้วอยากจะแชร์ให้คนในทีม/ทั่วโลกใช้ เขาก็จะทำการอัพโหลดมันขึ้นมาเก็บที่ 🗃️ Docker Registry
นั่นเอง ดังนั้นเวลาที่เราใช้คำสั่งที่เกี่ยวข้องกับ Image แล้วพี่วาฬมองหา Image ในเครื่องไม่เจอ เขาก็จะว่ายน้ำไปตามหา Image ตัวนั้นๆจาก 🗃️ Docker Registry
มาให้เรานั่นเอง ตามรูปด้านล่าง
🤠 โดยปรกติถ้าเราพูดคำว่า 🗃️ Docker Registry
มันจะหมายถึง 🌎 Docker Hub
ที่เป็นตัวรวม 🖼️ Container Images
ของทุกคนทั่วโลก ซึ่งมันมี Container Image อยู่ในนั้นเป็น 1,000,000,000 ล้านตัว+ และมีผู้ใช้เงินเกิน 5 ล้านคนต่อวัน 🤯 ดังนั้นของแทบจะทุกอย่างที่เราอยากได้เกิน 80% น่าจะอยู่บนนั้นหมดแล้วนั่นเอง
โดยปรกติถ้าเราจะสร้าง 🖼️ Container Image
ไปฝากไว้บน 🌎 Docker Hub
เราก็สามารถทำได้เลยแถมฟรีด้วย แต่ข้อเสียของมันคือ 👁️ ทุกคนบนโลกมองเห็นและสามารถใช้งานได้นะจ๊ะ (ก็เหมือนฝากโค้ดไว้กับ Git Hub งุย) ซึ่งถ้าเราไม่อยากให้คนอื่นเห็น เช่นงานเราสำคัญมากๆไรงี้ เราต้องจ่ายเงินเพื่อทำเป็น private นั่นเอง
คำเตือน เราสามารถสร้าง private container image ได้ฟรี 1 อันต่อ 1 account ก็จริง แต่กฎใหม่ของ Docker Hub ที่พึ่งออกมาสดๆร้อนได้บอกว่า ถ้า Container Image ไม่มีการเคลื่อนไหวนานเกิน 6 เดือน มันจะถูกลบอัตโนมัติ ดังนั้นให้ระวังไว้ด้วยนะจ๊ะ
🗃️ Container Registry
ถ้าถามว่ามันมีที่เก็บ 🖼️ Container Images
แค่ใน 🌎 Docker Hub
เพียงที่เดียวหรือเปล่า? คำตอบคือไม่ใช่ เพราะทั่วโลกมีผู้ให้บริการเก็บ Container Image อยู่มากมาย โดยเฉพาะกับเหล่าผู้ให้บริการคลาว์ด ไม่ว่าจะเป็น Microsoft ก็มี ACR (Azure Container Registry) ส่วน Amazon ก็มี ECR (Elastic Container Registry) พี่ Google ก็มี CR (Container Registry) และพี่จีน Alibaba ก็มี CR (Container Registry) ให้เราได้ลองเลือกใช้กัน 😉
รายละเอียดการเอา
🖼️ Container Image
ไปเล่นกับผู้ให้บริการคลาว์ดแต่ละเจ้าได้เห็นแน่นอนแต่ ดช.แมวน้ำ ขอแยกเอาไว้โชว์ในบทความถัดๆไปนะขอรับ
เกร็ดความรู้
ไม่ว่าเราจะใช้บริการฝาก 🖼️ Container Images
ไว้กับผู้ให้บริการรายไหนก็ตามก็ไม่ต้องเป็นกังวล เพราะ 🗃️ Container Registry ทุกเจ้าสามารถใช้งานร่วมกันได้หมดเบย 💖
🎯 Summary
🗃️ Docker Registry
คือส่วนกลางที่เอาไว้เก็บ 🖼️ Container Image
จากทั่วโลกไว้บนอินเตอร์เน็ต ซึ่งรู้จักกันในชื่อ 🌎 Docker Hub
นั่นเอง แต่ก็ยังมีที่เก็บ 🖼️ Container Image
อื่นๆทั่วโลก เช่นจากผู้ให้บริการคลาว์ดอย่าง Microsoft, Amazon, Google และ Alibaba คอยให้เราได้ลองใช้บริการอยู่นั่นเอง
หมายเหตุ
รายละเอียดของ 🗃️ Docker Registry
จริงๆยังมีอีกเยอะเบยที่น่าสนใจ แต่ถ้าเราจะอัดแต่ทฤษฎีเพียงอย่างเดียวก็จะเข้าใจมันได้ไม่เต็มร้อย ดังนั้น ดช.แมวน้ำ จะค่อยๆอธิบายควบคู่กับตอนทำ Workshop ละกันนะจุ๊ฟๆ 😙
ในบทความถัดไปเดี๋ยวเรามาลองสร้าง 🖼️ Container Image
ตัวแรกของเรา เพื่อเอาไปใช้งานส่วนตัว หรือ เอาไปใช้ภายในทีมกันครัช
อ่านแล้วชอบป๋มก็ขอฝากแชร์ หรือกดติดตามเพื่อจะได้ไม่พลาดบทความอื่นๆจาก ดช.แมวน้ำ ได้จากลิงค์นี้เบยครัช Saladpuk Fanclub 😍
Last updated