<p>While discussing  difference between containers and virtual machines, one of the biggest difference is that virtual machines are heavyweight since they abstract the entire underlying hardware whereas containers are lightweight since they are just isolated instances in an OS. I am just curious how containers are deployed in the cloud ? Are they deployed on baremetal servers or on  virtual machines? For deployment in the latter, does it take away the advantage ? </p>

IT_novice
<p>This is mostly an opinion answer so I'll answer with an opinion.</p>

<p>Containers are deployed in both VMs and Bare-metal servers, it really depends on what cloud service and specific offering within that cloud server you are using.</p>

<p>Nowadays, I would say a large part of containers run on VMs. One example would be AWS which runs all of its workloads in VMs except for i3.metal instances. Keep in mind that some of their VMs are very large and even some of the large ones can take up a full physical server.  Running in VMs allows them to scale faster with automation.</p>

<p>Having said that, there are quite a handful of cloud providers that do bare-metal, and I expect the large ones like AWS to continue adding more bare-metal offerings for certain kinds of workloads. Bottom line nothing beats pure bare-metal performance.</p>
