Containers on AWS
Container management tools can be broken down into three categories: registry, orchestration, and compute. AWS offers services that give you a secure place to store and manage your container images, orchestration that manages when and where your containers run, and flexible compute engines to power your containers. AWS can help manage your containers and their deployments for you, so you don't have to worry about the underlying infrastructure. No matter what you're building, AWS makes it easy and efficient to build with containers.
Registry
Amazon Elastic Container Registry (ECR) is a fully-managed container registry that makes it simpler and faster for developers to store, manage, and deploy container images.
Orchestration
Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that provides the most secure, reliable and scalable way to run containerized applications.
Amazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes service that provides the most secure, reliable, and scalable way to run containerized applications using Kubernetes.
Compute
AWS Fargate is a serverless compute engine for containers. Fargate makes it easy for you to focus on building your applications.
Run containers on virtual machine infrastructure with full control over configuration and scaling.
Service selection
AWS offers the widest range of services for storing, managing, and running containers. Choose the right AWS service for your workload, from small experiments to critical production applications.
| If you want to... |
Consider using |
Because... |
|---|---|---|
| Store, encrypt, and manage container images | Amazon ECR |
ECR compresses and encrypts your container images, making them fast to start and available to run anywhere. |
| Run containerized applications or build microservices | Amazon ECS | Amazon Elastic Container Service (Amazon ECS) is a fully managed container orchestration service that provides the most secure, reliable and scalable way to run containerized applications. |
| Manage containers with Kubernetes | Amazon EKS | Amazon Elastic Kubernetes Service (Amazon EKS) is a fully managed Kubernetes service that provides the most secure, reliable, and scalable way to run containerized applications using Kubernetes. |
| Run containers without managing servers |
AWS Fargate | AWS Fargate is a serverless compute engine for containers that works with both Amazon Elastic Container Service (ECS) and Amazon Elastic Kubernetes Service (EKS). Fargate removes the need to provision and manage servers, lets you specify and pay for resources per application, and improves security through application isolation by design. |
| Run containers with server-level control | Amazon EC2 |
EC2 virtual machines gives you control of your server clusters and provide a broad range of customization options. |

