Amazon ECS task definitions - Amazon Elastic Container Service

Amazon ECS task definitions

A task definition is required to run Docker containers in Amazon ECS. The following are some of the parameters that you can specify in a task definition:

  • The Docker image to use with each container in your task

  • How much CPU and memory to use with each task or each container within a task

  • The launch type to use, which determines the infrastructure that your tasks are hosted on

  • The Docker networking mode to use for the containers in your task

  • The logging configuration to use for your tasks

  • Whether the task continues to run if the container finishes or fails

  • The command that the container runs when it's started

  • Any data volumes that are used with the containers in the task

  • The IAM role that your tasks use

You can define multiple containers in a task definition. The parameters that you use depend on the launch type that you choose for the task. Not all parameters are valid. For a list of available parameters and information about which launch types that they're valid for in a task definition, see Task definition parameters.

Your entire application stack doesn't need to be on a single task definition, and in most cases it isn't on a single task definition. Your application can span multiple task definitions. You can do this by combining related containers into their own task definitions, each representing a single component. For more information, see Application architecture.