Docker vs Digital Machine Analogy



Hey guys, I’ve simply began studying Docker, so I needed to share this analogy that got here to my thoughts. I imagine analogies make issues a lot clearer and simpler to recollect than the rest ever might.

Overview of Digital Machines


  • Let’s discuss VMs first. Digital Machines use one thing referred to as a hypervisor on prime of {hardware}.
  • A Hypervisor is a chunk of software program that manages {hardware} assets throughout digital machines. One could consider a Hypervisor as an “HR supervisor” 😂.
  • On prime of the hypervisor, we’ve got the digital machine, every with its personal underlying OS working purposes. That is nice if we need to run completely different companies/purposes on completely different working methods, nevertheless it additionally comes with disadvantages comparable to:
    • Consuming loads of assets, as each digital machine has to run a separate working system.
    • Sluggish startup time.

Overview of Docker


  • Now, Docker has an working system on prime of which we’ve got the Docker engine.
  • The container engine is what unpacks the container information and fingers them off to the working system kernel.
  • On prime of the container engine, we’ve got purposes that use the underlying working system obtainable on the server. Containers solely include the mandatory information to run a particular utility, which makes them:
    • Very light-weight.
    • Very quick and compact.
      Whereas VMs use a separate working system.
  • Now, with benefits come some disadvantages, that are:
    • If the OS working on the server is Linux, then purposes should even be Linux-based. They are often of various distros as Docker makes use of the underlying working system’s kernel.

By the best way, that is what makes Linux extraordinarily quick, as as a substitute of utilizing a number of OSes, it makes use of the kernel of a single OS to handle and isolate completely different purposes.

The Analogy

  • Now that we’ve got an outline of how each applied sciences work, this is the analogy:
  • One could consider a Digital Machine as a store that makes a speciality of giving companies of a single product class (like an digital store or furnishings retailer). Think about if I needed to promote dairy merchandise from a pharmacy; I am unable to do this, proper? I must construct a brand new store to promote dairy merchandise.
  • Now, enter Docker. We will see it as a buying complicated, with completely different outlets working beneath the identical constructing (completely different purposes working on the identical underlying working system). I’ll open as many alternative outlets as I want (subjected to availability of {hardware} assets).

Observe for extra, As I study extra about Docker I am going to publish extra Analogies


Leave a Reply

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