Chiselled Ubuntu update

ข่าวใหม่!! กระทบวงการเลยทีเดียว…เอาใจสาย Container

.

Chiselled Ubuntu update ใหม่ เป็น GA(General Availability – Production Ready) แล้วนะ

.

ที่ว่ากระทบ คือกระทบยังไง? กล่าวคือ

Chiselled Ubuntu containers เป็น container ที่มีขนาดเล็กมากๆ ภายในถูกออกแบบตามมาตราฐาน OCI (Open Container Initiative) หรือเรียกย่อๆ ว่าเป็น ultra-small OCI image

.

แล้วที่ว่าเล็กเนี่ยมันเกิดจากอะไรละ…. ตอบเลยก็คือตัดส่วนที่ไม่จำเป็นออก ภายในจะมีแค่ application และตัว runtime dependenticies (app runtime หรือตัวรัน app พร้อม dependencies) ซึ่งไม่มีส่วนอื่นที่ไม่เกี่ยวข้องอย่าง operating system-level packages, utilities, หรือ libraries อื่นๆ เลย ส่งผลให้เจ้าตัว container image ตัวนี้ทั้งเล็กและเบา(lightweight) ในการ maintain, operate, secure ใช้งาน resource ได้อย่างเต็มประสิทธิภาพ

.

ภายในประกอบตัว pre-build image อย่าง Java, .NET and Python ซึ่งเราเอามาใช้สำหรับเป็น runtime, build dependencies เพื่อใช้เป็น base image ของ container ของเราได้… ใครที่ต้องการนำตัวที่สร้างมาสำหรับ production ไปใช้งานสามารถไปหยิบจาก Link Container image ด้านล่างได้เลย

.

แต่ๆ!! หากเราต้องการสร้าง container image ของตัวเองโดยใช้ chisel เป็นพื้นฐานแล้วสามารถทำตามได้ที่ https://ubuntu.com/…/craft-custom-chiselled-ubuntu… ซึ่งภายในจะมี CLI ให้ใช้อย่าง chisel CLI โดยเครื่องมือตัวนี้ถูกสร้างขึ้นมาช่วยสำหรับการทำ prebuild image เท่านั้น(ใช้เฉพาะตอน build time) ส่วน final image อยู่ที่เราจะจัดสรรค์เลย เพราะการเลือก final image มี trade-off เสมอ ยิ่งเราเติมของที่ไม่จำเป็นเข้าไปเท่าไหร่ ยิ่งมีโอกาสเสี่ยงในเรื่องของ surface attack (พื้นที่ในการโจมตี) เท่านั้น

.

ถึงอย่างไรก็ตามการจะใช้ของสำเร็จรูปที่มีมาให้ หรือสร้างตั้งแต่พื้นฐานขึ้นมาเอง สิ่งที่สำคัญที่สุดอย่าลืมบันทึก ADR(Architectural Decision Record) ไว้เพื่อเป็นเหตุผลให้กับคนที่มา maintain ต่อว่าทำไมถึงตัดสินใจแบบนั้น ด้วยเหตุผลอะไร จะดีกว่า

.

ใครสนใจไปลองตำกันนะให้ Link Container image ไว้ให้ไปลองเล่นเป็น base image ดู เล่นได้ยังไง อย่าลืมมา tag @Jumpbox ให้ไปชื่นชมและแลกเปลี่ยนกันด้วยนะ

.

Link Container image

https://hub.docker.com/r/ubuntu/dotnet-deps

https://hub.docker.com/r/ubuntu/dotnet-aspnet

https://hub.docker.com/r/ubuntu/dotnet-runtime

.

References:

https://canonical.com/blog/chiselled-ubuntu-ga

https://www.youtube.com/watch?v=o8NILnbjhQ4

Leave a Reply

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