কন্টেইনার এবং ভার্চুয়াল মেশিন (VMs) উভয়ই বিচ্ছিন্ন পরিবেশ প্রদান করে, কিন্তু তারা ভিন্নভাবে কাজ করে: কন্টেইনার হোস্টের OS কার্নেল শেয়ার করে (হালকা), যখন VMs হাইপারভাইজরের মাধ্যমে ভার্চুয়ালাইজড হার্ডওয়্যারে সম্পূর্ণ গেস্ট OS চালায় (ভারী)। পার্থক্য বোঝা ব্যাখ্যা করে কেন কন্টেইনার এত দক্ষ।
মূল আর্কিটেকচারগত পার্থক্য
VIRTUAL MACHINE: CONTAINER:
┌─────────────────┐ ┌─────────────────┐
│ App + Libs │ │ App + Libs │
│ GUEST OS (full)│ ← full OS each │ (shares kernel) │ ← no guest OS
├─────────────────┤ ├─────────────────┤
│ Hypervisor │ │ Docker Engine │
├─────────────────┤ ├─────────────────┤
│ Host OS │ │ Host OS │
│ Hardware │ │ Hardware │
└─────────────────┘ └─────────────────┘
