Giới thiệu về Docker – công nghệ đóng gói ứng dụng vào Container

1
468

Các bạn làm quản trị mạng chắc đã quen với công nghệ ảo hóa (Hyper-Visor)

Hôm nay, mình xin giới thiệu một công nghệ khác dựa trên nền tảng ảo hóa, đó là Container, cụ thể là Docker. (Container là tên công nghệ, Docker là tên công cụ triển khai nó)

Công nghệ Container đã có từ lâu, Google đã áp dụng nó từ hàng chục năm trước. Để dễ hiểu, mời các bạn xem qua ảnh sau:

Click image for larger version

Name:	1.png
Views:	1
Size:	54,4 KB
ID:	22356135

Bên trái là công nghệ ảo hóa thông thường. Một hệ điều hành (Windows Server, Vmware vSphere, Ubuntu…) được cài trên máy vật lý. Trên hệ điều hành đó cài phần mềm ảo hóa (Hyper-V, VirtualBox, Vmware…) để cài đặt và sử dụng các máy ảo trên đó.

Bên phải là công nghệ Container Docker. Một hệ điều hành cũng được cài lên máy vật lý, nhưng không có Guest OS nào cả, tất cả ứng dụng được đóng gói và chạy trực tiếp dựa trên kernel của hệ điều hành host OS. Như vậy, bạn tiết kiệm được phần tài nguyên phải cấp cho các máy ảo. Nói cách khác, các container sẽ chia sẻ kernel của hệ điều hành. Nhưng Docker không chỉ có vậy. Cái cốt yếu của nó dựa vào Slogan “Build, Ship, Run”

Build, ship and run everywhere

Mọi ứng dụng được đóng gói vào Container và chạy trên HostOS. Bạn có thể chia sẻ nó đi bất kỳ máy nào có cài Docker và chạy. Tốc độ up lên một server mới có khi chỉ tính bằng giây.

Hiện tại, Docker hỗ trợ mạnh mẽ trên Linux, nhưng Microsoft vừa tung ra Windows Server 2016, hỗ trợ chạy ứng dụng Windows trên Docker, dựa trên Hyper-V Container và Windows Server Container.

Theo mình, Docker có một số lợi ích to lớn sau đây:

+ Tiết kiệm tài nguyên hệ thống
+ Linh hoạt trong việc sử dụng tài nguyên, scale hệ thống với tốc độ lớn.
+ Thời gian deploy cực nhanh
+ Đồng bộ môi trường Dev, Test, Production một cách dễ dàng
…..

1 COMMENT

LEAVE A REPLY

Please enter your comment!
Please enter your name here