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.
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...
|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||ECS eliminates the need for you to install and operate your own container orchestration software or manage and scale a cluster of virtual machines.|
|Manage containers with Kubernetes||Amazon EKS||EKS provisions and manages a conformant, upstream Kubernetes control plane and is integrated with many AWS services to provide scalability and security for your applications.|
|Run containers without managing servers
||AWS Fargate||Fargate scales and manages the infrastructure required to run your containers. This removes the need to choose server types, decide when to scale your clusters, or optimize cluster packing.
|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.
Containers run better on AWS
AWS offers more options with more unique capabilities for running containers than any other cloud.
Serverless technologies let you focus on designing and building your containerized applications instead of managing the infrastructure that runs them. AWS Fargate is a serverless compute engine that makes it easy to run containers in production. With Fargate, you no longer have to provision, configure, or manage virtual machines to run containers.
AWS offers managed services for Service Discovery and Service Mesh that make it easy to run microservices.
AWS Cloud Map is a cloud resource discovery service that lets you define how services discover and connect with each other. With Cloud Map, you can define custom names for your application resources, and it maintains the updated location of these dynamically changing resources.
Learn more about Cloud Map »
AWS App Mesh is a service mesh that makes it easy to configure part of your application for end-to-end visibility and high-availability. App Mesh is integrated with AWS Fargate, Amazon ECS, and Amazon EKS.
Learn more about App Mesh »
AWS makes it easy to use containers run advanced workloads for machine learning, high performance computing, financial analytics, and video transcoding. Amazon EKS makes it easy to run machine learning workloads using Kubernetes on AWS with an optimized Amazon Machine Image (AMI) that includes configured NVIDIA drivers for GPU-enabled P2 and P3 EC2 instances.
AWS works closely with the open source community, contributing to hundreds of open source projects and building services that are compatible with open source tools. You can use AWS to run sophisticated open source software for containers including Docker, Kubernetes, Mesos, Swarm, Envoy, Linkerd, and Prometheus.
In the Kubernetes community, AWS is an active contributor, leading SIG-AWS and helping to maintain projects that make it easier to run Kuberentes on AWS, including etcd, Kubernetes CSI, AWS IAM authenticator, CNI plugin, and External DNS.