Containers provide a standard way to package code, configurations, and dependencies for your application into a single object. They share an operating system installed on the server and run as isolated processes. This allows you to make fast, reliable, and consistent deployments regardless of the environment. The AWS platform provides infrastructure capabilities optimized for running containers, plus a set of orchestration services that make it easy to create and run containerized applications in production.
On whitepaper Running Containerized Microservices on AWS The architectural best practices for adopting containers on AWS are discussed, and how traditional software design standards evolve in the context of containers. Martin Fowler’s principles of microservices are mapped to The Twelve-Factor App pattern, in addition to real-life considerations. After reading this content, you will have a starting point for building microservices using software design best practices and standards.
It is recommended to read whitepaper above, as it brings the basics and best practices of architecture for adopting containers on AWS that are essential to a resilient, contingency architecture across multiple regions.