There’s no doubt that cloud container services adoption is on the rise. A recent survey found that more than 80% of IT professionals and teams reported deploying container technologies — up from 58% in 2017.
With this rise in adoption comes a rise of options in the market, so it quickly becomes difficult to keep track of each service and what they’re best used for. We took a look at 14 container services and container-like services associated with the top cloud providers, and broke down the main use case for each. Scroll to the bottom for a comparison chart.
AWS Cloud Container Services
Amazon Elastic Container Service
Amazon Elastic Container Service (Amazon ECS) is a container orchestration service, used to manage and deploy containers distributed across many AWS virtual machines. Combined with AWS Fargate, it allows you to run containers without selecting servers. Pricing depends on the launch model: for the Fargate model, you pay for vCPU and memory that your containerized application requests. For the EC2 model, you simply pay for the EC2 instances and other resources – such as EBS volumes – you create to store and run your application.
Amazon Elastic Container Registry
Amazon Elastic Container Registry (Amazon ECR) is AWS’s managed solution to store, manage, and deploy Docker container images. It is highly available, scalable, and integrated with Amazon ECS. Payment is based on the amount of data stored in repositories and data transferred to the Internet.
Amazon Elastic Container Service for Kubernetes
Amazon Elastic Container Service for Kubernetes (Amazon EKS) is AWS’s service to manage and deploy containers via Kubernetes container orchestration service. Pricing is $0.20 per hour for each EKS cluster, as well as the cost of AWS resources such as EC2 instances that you create to run your Kubernetes worker nodes.
AWS Fargate is a solution for Amazon ECS that allows you to run containers without managing servers or infrastructure, making it easier to focus on applications rather than the infrastructure that runs them. Pricing is based on the vCPU and memory resources used.
AWS Batch is a way for AWS users to run large quantities of batch computing jobs — which is done by executing them as Docker containers. You pay only for the AWS resources you use to create to store and run your application, with no additional fees.
Azure Cloud Container Services
Azure Kubernetes Service
Azure Kubernetes Service (AKS) is Azure’s fully managed solution to manage & deploy containers via Kubernetes container orchestration service. You pay only for the VMs, storage, and networking resources used for the Kubernetes cluster, with no additional charge.
Azure Container Registry
Azure Container Registry is a way to store and manage container images for container deployment across DC/OS, Docker Swarm, Kubernetes, and Azure services including App Service, Batch, and Service Fabric. Pricing is per day, with several tiers depending on the amount of storage and web hooks needed.
Azure Container Instances
Azure Container Instances (ACI) is a service that allows you to run containers on Azure without managing servers or infrastructure, making it simpler to build applications without focusing on infrastructure. Billing is by “container groups” which are assignments of vCPU and memory resources for your running containers, and is on a per-second basis.
Azure Batch is a service for running a large number of competitive compute jobs, which users can choose to can run directly on virtual machines or on Docker-compatible containers. You pay only for the compute and other resources used to run the batch jobs, with no additional fees for using Batch.
Azure App Service
Azure App Service is a way to create cloud-based web apps and APIs, which similarly to Azure Batch, has options for running on virtual machines or in containers. Billing is per hour, with several tiers depending on your needs for disk space, number of instances, auto scaling, and network isolation.
Azure Service Fabric
Azure Services Fabric is a way to lift, shift, and modernize .NET applications to microservices using Windows Server containers. Service Fabric is an open source project that powers core Azure infrastructure and other Microsoft services include Skype for Business, Azure SQL Databases, Cortana and more. You pay for compute, volumes, and collections used, though the complicated pricing model makes it hard to estimate.
Google Cloud Container Services
Google Kubernetes Engine
Google Kubernetes Engine (GKE) is Google Cloud’s fully managed solution to manage and deploy containers via Kubernetes container orchestration service. You pay for the Google Compute Engine instances used, with no additional charges.
Google Container Registry
Google Container Registry allows users to store and manage Docker container images for container deployment. You pay for the storage and network used by your Docker resources.
Google App Engine Flexible Environment
Google App Engine Flexible Environment is a platform for deploying web apps and APIs, which you can do on VM instances or on Docker containers. Pricing is based on the compute, storage, and other resources used for the apps
Cloud Container Services Comparison Chart
For quick and easy reference, we’ve condensed this comparison into a chart:
It’s a great time to become familiar with the various cloud container services and try them out — this infrastructure model will only become more prominent!