Phần 1: Docker là gì?

Phần 2: Ai sẽ dùng Docker?

Phần 3: Làm việc với Docker thế nào?

Phần 4: Có thể dùng Docker trong các trường hợp nào?

2.1 Docker cho lập trình viên (Dev)

Với lập trình viên, Docker mang lại những giá trị sau:

  • Tính đóng gói (encapsulation): không lo lắng về việc thiếu thư viện phụ thuộc, thông tin cấu hình (config) khi triển khai một ứng dụng. Build một lần và chạy mọi nơi.
  • Tính cô lập (isolation): tránh được xung đột khi chạy nhiều ứng dụng trên cùng một máy.
  • Tính di động (portable): có thể dễ dàng chạy ứng dụng trên nhiều máy khác nhau. Không cần cài đặt lại.
  • Có thể kịch bản hóa (script) hóa các công việc như kiểm thử tự động (automation testing), tích hợp (integration), đóng gói (packaging).
  • Nhỏ gọn, chạy nhanh và ít tốn kém (overhead) hơn rất nhiều so với máy ảo (Virtual Machine).

2.2 Docker cho quản trị viên (Ops)

Với Ops, Docker mang lại những giá trị sau:

  • Giúp cho việc quản lí toàn bộ vòng đời (lifecycle) của ứng dụng hiệu quả, nhất quán và có thể lặp lại
  • Tăng chất lượng code.
  • Loại bỏ xung đột giữa các môi trường phát triển, thử nghiệm và môi trường thực (production).
  • Cải thiện đáng kể về tốc độ và độ tin cậy của hệ thống tích hợp liên tục và triển khai liên tục (CI/CD System)
  • Tiết kiệm chi phí về thời gian, tài nguyên.

2.3 Dev và Ops quan tâm gì khi làm việc với Docker?

Cấu tạo của container trong giao vận (Nguồn: Internet)
Những vấn đề Dev và Ops quan tâm khi làm việc với Docker

(Còn tiếp ...)

Tài liệu tham khảo

Nguyễn Sỹ Thanh Sơn. Docker - Hướng tiếp cận mới của xu thế DevOps, SFD 2016.