From the course: Docker on Azure (2019)

Container instances or VMs?

From the course: Docker on Azure (2019)

Start my 1-month free trial

Container instances or VMs?

- [Instructor] In the Azure Cloud environment, there are two models for deploying and managing containers. The first is the classic Docker on virtual machines. You manage the virtual machines. You build up the virtual machine cost level for however long you run those virtual machines, and you're using the standard Docker processes for managing your images, so you have the Docker APIs. If you want to actually use the remote sessions, you can actually talk to the Docker client remotely, although that's fairly uncommon and potentially a security risk. And you're billed at the level of VM, so you think of this as just an extension to you managing a virtual machine. It's a different way of managing your applications on top of those virtual machines. Azure Container Instances, on the other hand, is a different approach, because Azure takes care of managing the underlying virtual machine layers, and it exposes an API through the standard Azure API services to allow you to manipulate the deployment and life cycle of those containers, so it potentially provides a more direct integration with the Azure DevOps processes and automation services. You are billed based on the container consumed. There are still some quanta there, how much memory, how much CPU you're going to use, so it does look a little bit like a virtual machine, but it is a little bit more direct in that you're thinking about the individual container or container group rather than at the full Docker on virtual machine level.

Contents