Containers at AWS

Run your containers in the most secure, reliable and scalable environment

Overview

AWS container services make it easier to manage your underlying infrastructure, whether on premises or in the cloud, so you can focus on innovation and your business needs. Nearly 80 percent of all containers in the cloud run on AWS today. Customers such as Samsung, Expedia, GoDaddy, and Snap choose to run their containers on AWS for security, reliability, and scalability.

container illustration

Features

Ensure strong security isolation between your containers. AWS provides the latest security updates and lets you set granular access permissions for every container. AWS offers over 210 security, compliance, and governance services, plus key features to best suit your needs.

Get started quickly with AWS Copilot or AWS App Runner to reduce operational overhead and management. AWS can help your team release your applications quickly, streamline feedback, iterate faster on ideas, and speed up time to market.

Select from the broadest choice of services to run your containers. Choose AWS Fargate for serverless compute for containers, where AWS will manage your infrastructure provisioning. For full control over your compute environment, choose to run your containers on Amazon Elastic Compute Cloud (EC2). For container orchestrators, you can choose either Amazon Elastic Container Service (ECS) or Amazon Elastic Kubernetes Service (EKS).

Combine the agility of containers with the elasticity and security of the cloud. AWS container services are deeply integrated with other AWS services by design, allowing your container applications to take advantage of the breadth and depth of AWS, from networking and security to monitoring. AWS container services run on a widespread global infrastructure with over 80 Availability Zones (AZ) across 25 Regions. More info on SLAs for the container services can be found here: Amazon ECSAmazon EKS, and AWS Fargate.

AWS Containers services

Sub-category Use cases AWS service
Container orchestration Run containerized applications or build microservices  Amazon Elastic Container Service (ECS)
Manage containers with Kubernetes Amazon Elastic Kubernetes Service (EKS)
Compute options Run containers without managing servers

AWS Fargate
Run containers with server-level control

Amazon Elastic Compute Cloud (EC2)
Run fault-tolerant workloads for up to 90 percent off Amazon EC2 Spot Instances
Tools & services with containers support Quickly launch and manage containerized applications
AWS Copilot
Share and deploy container software, publicly or privately Amazon Elastic Container Registry (ECR)
Application-level networking for all your services AWS App Mesh
Cloud resource discovery service AWS Cloud Map
Package and deploy Lambda functions as container images AWS Lambda
Build and run containerized applications on a fully managed service
AWS App Runner
Run simple containerized applications for a fixed, monthly price Amazon Lightsail
Containerize and migrate existing applications AWS App2Container
Replatform applications to Amazon ECS with a guided experience AWS Migration Hub Orchestrator
On-premises Run containers on customer-managed infrastructure Amazon ECS Anywhere
Create and operate Kubernetes clusters on your own infrastructure Amazon EKS Anywhere
Enterprise-scale container management Automated management for container and serverless deployments
AWS Proton
A fully managed, turnkey app platform Red Hat OpenShift Service on AWS (ROSA)
Open-source Run the Kubernetes distribution that powers Amazon EKS Amazon EKS Distro
Containerize and migrate existing applications AWS App2Container

Use Cases

Break apart applications and run them as independent components, called microservices, using containers to isolate processes.

Package batch processing and extract, transform, and load (ETL) jobs into containers to start jobs quickly and scale them dynamically in response to demand.

Quickly scale machine learning (ML) models for training and inference and run them close to your data sources on any platform with containers.

Standardize how you deploy code by building workflows for applications in containers and running them between on-premises and cloud environments.

Package entire applications and move them to the cloud without the need to make any code changes.