DEV Community

Cover image for Docker ও VM-এর মধ্যে পার্থক্যগুলো কী?
Bayajid Alam Juyel
Bayajid Alam Juyel

Posted on

Docker ও VM-এর মধ্যে পার্থক্যগুলো কী?

SDLC-এ Deployment টার্মটি এমন এক প্রক্রিয়া যেখানে অ্যাপ্লিকেশনের কোড ব্যবহারকারীর জন্য রান করানো হয়। Deployment-এর জন্য Docker ও Virtual Machine (VM) উভয়ই ব্যবহার করা হয়। তবে Docker ও VM-এর মধ্যে পার্থক্যগুলো কী?

Docker: একটি ওপেন সোর্স প্ল্যাটফর্ম যা ডেভেলপারদের তাদের সফটওয়্যারকে Container নামে পরিচিত একটি standard unit-এ প্যাকেজ করতে দেয়। Container সাধারণত অ্যাপ্লিকেশনের কোড, নির্দিষ্ট environment, এবং প্রয়োজনীয় লাইব্রেরি নিয়ে গঠিত হয়, যার নিজস্ব File System, Dependency Structure এবং Networking Capabilities থাকে। কনটেইনারগুলো Host OS-এর রিসোর্স সরাসরি ব্যবহার করে এবং একাধিক কনটেইনার একই OS-এর রিসোর্স শেয়ার করতে পারে।

VM (Virtual Machine): সাধারণত একটি কম্পিউটার প্রসেসর, RAM, Hard drive, Network, OS এবং বিভিন্ন সফটওয়্যার নিয়ে গঠিত হয়। Virtual Machine একটি সফটওয়্যার যা একটি হার্ডওয়্যারের মতো আচরণ করে, অর্থাৎ এটি একটি Physical Machine-এর হার্ডওয়্যার কম্পোনেন্টগুলোকে ইমুলেট করে। প্রতিটি VM-এর নিজস্ব Kernel এবং Operating System থাকে। আমরা একটি Windows কম্পিউটারের ভেতরে Linux চালাতে পারি এর কারণে।

কনটেইনার Host OS-এর রিসোর্স শেয়ার করে, যার ফলে একই OS-এ অনেকগুলো কনটেইনার চালানো সম্ভব হয় এবং তারা কম রিসোর্স ব্যবহার করে। প্রতিটি কনটেইনারের নিজস্ব অপারেটিং সিস্টেমের প্রয়োজন হয় না, যা কনটেইনারকে Lightweight করে তোলে। অন্যদিকে, Virtual Machine-এ প্রতিটি VM-এর জন্য একটি আলাদা OS এবং Kernel চলতে হয়। এর ফলে প্রতিটি VM-কে নির্দিষ্ট পরিমাণে রিসোর্স (যেমন CPU, RAM) প্রি-অ্যালোকেট করতে হয়, যা একই সিস্টেমে VM-এর সংখ্যা সীমাবদ্ধ করে।

Sentry image

Hands-on debugging session: instrument, monitor, and fix

Join Lazar for a hands-on session where you’ll build it, break it, debug it, and fix it. You’ll set up Sentry, track errors, use Session Replay and Tracing, and leverage some good ol’ AI to find and fix issues fast.

RSVP here →

Top comments (0)

Qodo Takeover

Introducing Qodo Gen 1.0: Transform Your Workflow with Agentic AI

Rather than just generating snippets, our agents understand your entire project context, can make decisions, use tools, and carry out tasks autonomously.

Read full post