Book Image

Amazon Fargate Quick Start Guide

By : Deepak Vohra
Book Image

Amazon Fargate Quick Start Guide

By: Deepak Vohra

Overview of this book

Amazon Fargate is new launch type for the Amazon Elastic Container Service (ECS). ECS is an AWS service for Docker container orchestration. Docker is the de facto containerization framework and has revolutionized packaging and deployment of software. The introduction of Fargate has made the ECS platform serverless. The book takes you through how Amazon Fargate runs ECS services composed of tasks and Docker containers and exposes the containers to the user. Fargate has simplified the ECS platform. We will learn how Fargate creates an Elastic Network Interface (ENI) for each task and how auto scaling can be enabled for ECS tasks. You will also learn about using an IAM policy to download Docker images and send logs to CloudWatch. Finally, by the end of this book, you will have learned about how to use ECS CLI to create an ECS cluster and deploy tasks with Docker Compose.
Table of Contents (14 chapters)
Title Page
Copyright and Credits
Packt Upsell

Configuring a Container definition

In this section, we shall discuss creating a container definition for a MySQL database:

  1. Click on Configure for the Custom Container definition, as shown in the following screenshot. Some other container definitions are available as examples:
  1. In the Edit container dialog, specify a Container name (mysql) and specify Image as mysql, as shown in the following screenshot.
  1. Specify a Soft limit (512) and a Hard limit (1024) for memory. The hard limit for memory must not be less than the soft limit:
  1. Specify the Container port as 3306 in Port Mappings, with the Protocol as tcp, as shown in the following screenshot. With the Fargate launch type, only container port mappings may be configured. Host port mappings are not valid, and are set to the same value as the container port mappings:
  1. In the Advanced container configuration | ENVIRONMENT section, specify the mandatory environment variable for the mysql Docker image. The mandatory environment variable is MYSQL_ROOT_PASSWORD...