aws_ecs_task
account_id
Type: STRING
attachments
Type: UNORDERED_LIST_STRUCT
Provider name: attachments
Description: The Elastic Network Adapter that’s associated with the task if the task uses the awsvpc
network mode.
details
Type: UNORDERED_LIST_STRUCT
Provider name: details
Description: Details of the attachment. For elastic network interfaces, this includes the network interface ID, the MAC address, the subnet ID, and the private IPv4 address. For Service Connect services, this includes portName
, clientAliases
, discoveryName
, and ingressPortOverride
. For Elastic Block Storage, this includes roleArn
, deleteOnTermination
, volumeName
, volumeId
, and statusReason
(only when the attachment fails to create or attach).
name
Type: STRING
Provider name: name
Description: The name of the key-value pair. For environment variables, this is the name of the environment variable.
value
Type: STRING
Provider name: value
Description: The value of the key-value pair. For environment variables, this is the value of the environment variable.
id
Type: STRING
Provider name: id
Description: The unique identifier for the attachment.
status
Type: STRING
Provider name: status
Description: The status of the attachment. Valid values are PRECREATED
, CREATED
, ATTACHING
, ATTACHED
, DETACHING
, DETACHED
, DELETED
, and FAILED
.
type
Type: STRING
Provider name: type
Description: The type of the attachment, such as ElasticNetworkInterface
, Service Connect
, and AmazonElasticBlockStorage
.
attributes
Type: UNORDERED_LIST_STRUCT
Provider name: attributes
Description: The attributes of the task
name
Type: STRING
Provider name: name
Description: The name of the attribute. The name
must contain between 1 and 128 characters. The name may contain letters (uppercase and lowercase), numbers, hyphens (-), underscores (_), forward slashes (/), back slashes (), or periods (.).
target_id
Type: STRING
Provider name: targetId
Description: The ID of the target. You can specify the short form ID for a resource or the full Amazon Resource Name (ARN).
target_type
Type: STRING
Provider name: targetType
Description: The type of the target to attach the attribute with. This parameter is required if you use the short form ID for a resource instead of the full ARN.
value
Type: STRING
Provider name: value
Description: The value of the attribute. The value
must contain between 1 and 128 characters. It can contain letters (uppercase and lowercase), numbers, hyphens (-), underscores (_), periods (.), at signs (@), forward slashes (/), back slashes (), colons (:), or spaces. The value can’t start or end with a space.
availability_zone
Type: STRING
Provider name: availabilityZone
Description: The Availability Zone for the task.
capacity_provider_name
Type: STRING
Provider name: capacityProviderName
Description: The capacity provider that’s associated with the task.
cluster_arn
Type: STRING
Provider name: clusterArn
Description: The ARN of the cluster that hosts the task.
connectivity
Type: STRING
Provider name: connectivity
Description: The connectivity status of a task.
connectivity_at
Type: TIMESTAMP
Provider name: connectivityAt
Description: The Unix timestamp for the time when the task last went into CONNECTED
status.
container_instance_arn
Type: STRING
Provider name: containerInstanceArn
Description: The ARN of the container instances that host the task.
containers
Type: UNORDERED_LIST_STRUCT
Provider name: containers
Description: The containers that’s associated with the task.
container_arn
Type: STRING
Provider name: containerArn
Description: The Amazon Resource Name (ARN) of the container.
cpu
Type: STRING
Provider name: cpu
Description: The number of CPU units set for the container. The value is 0
if no value was specified in the container definition when the task definition was registered.
exit_code
Type: INT32
Provider name: exitCode
Description: The exit code returned from the container.
gpu_ids
Type: UNORDERED_LIST_STRING
Provider name: gpuIds
Description: The IDs of each GPU assigned to the container.
health_status
Type: STRING
Provider name: healthStatus
Description: The health status of the container. If health checks aren’t configured for this container in its task definition, then it reports the health status as UNKNOWN
.
image
Type: STRING
Provider name: image
Description: The image used for the container.
image_digest
Type: STRING
Provider name: imageDigest
Description: The container image manifest digest.
last_status
Type: STRING
Provider name: lastStatus
Description: The last known status of the container.
managed_agents
Type: UNORDERED_LIST_STRUCT
Provider name: managedAgents
Description: The details of any Amazon ECS managed agents associated with the container.
last_started_at
Type: TIMESTAMP
Provider name: lastStartedAt
Description: The Unix timestamp for the time when the managed agent was last started.
last_status
Type: STRING
Provider name: lastStatus
Description: The last known status of the managed agent.
name
Type: STRING
Provider name: name
Description: The name of the managed agent. When the execute command feature is turned on, the managed agent name is ExecuteCommandAgent
.
reason
Type: STRING
Provider name: reason
Description: The reason for why the managed agent is in the state it is in.
memory
Type: STRING
Provider name: memory
Description: The hard limit (in MiB) of memory set for the container.
memory_reservation
Type: STRING
Provider name: memoryReservation
Description: The soft limit (in MiB) of memory set for the container.
name
Type: STRING
Provider name: name
Description: The name of the container.
network_bindings
Type: UNORDERED_LIST_STRUCT
Provider name: networkBindings
Description: The network bindings associated with the container.
bind_ip
Type: STRING
Provider name: bindIP
Description: The IP address that the container is bound to on the container instance.
container_port
Type: INT32
Provider name: containerPort
Description: The port number on the container that’s used with the network binding.
container_port_range
Type: STRING
Provider name: containerPortRange
Description: The port number range on the container that’s bound to the dynamically mapped host port range. The following rules apply when you specify a containerPortRange
:- You must use either the
bridge
network mode or the awsvpc
network mode. - This parameter is available for both the EC2 and Fargate launch types.
- This parameter is available for both the Linux and Windows operating systems.
- The container instance must have at least version 1.67.0 of the container agent and at least version 1.67.0-1 of the
ecs-init
package - You can specify a maximum of 100 port ranges per container.
- You do not specify a
hostPortRange
. The value of the hostPortRange
is set as follows:- For containers in a task with the
awsvpc
network mode, the hostPortRange
is set to the same value as the containerPortRange
. This is a static mapping strategy. - For containers in a task with the
bridge
network mode, the Amazon ECS agent finds open host ports from the default ephemeral range and passes it to docker to bind them to the container ports.
- The
containerPortRange
valid values are between 1 and 65535. - A port can only be included in one port mapping per container.
- You cannot specify overlapping port ranges.
- The first port in the range must be less than last port in the range.
- Docker recommends that you turn off the docker-proxy in the Docker daemon config file when you have a large number of ports. For more information, see Issue #11185 on the Github website. For information about how to turn off the docker-proxy in the Docker daemon config file, see Docker daemon in the Amazon ECS Developer Guide.
You can call DescribeTasks
to view the hostPortRange
which are the host ports that are bound to the container ports.
host_port
Type: INT32
Provider name: hostPort
Description: The port number on the host that’s used with the network binding.
host_port_range
Type: STRING
Provider name: hostPortRange
Description: The port number range on the host that’s used with the network binding. This is assigned is assigned by Docker and delivered by the Amazon ECS agent.
protocol
Type: STRING
Provider name: protocol
Description: The protocol used for the network binding.
network_interfaces
Type: UNORDERED_LIST_STRUCT
Provider name: networkInterfaces
Description: The network interfaces associated with the container.
attachment_id
Type: STRING
Provider name: attachmentId
Description: The attachment ID for the network interface.
ipv6_address
Type: STRING
Provider name: ipv6Address
Description: The private IPv6 address for the network interface.
private_ipv4_address
Type: STRING
Provider name: privateIpv4Address
Description: The private IPv4 address for the network interface.
reason
Type: STRING
Provider name: reason
Description: A short (255 max characters) human-readable string to provide additional details about a running or stopped container.
runtime_id
Type: STRING
Provider name: runtimeId
Description: The ID of the Docker container.
task_arn
Type: STRING
Provider name: taskArn
Description: The ARN of the task.
cpu
Type: STRING
Provider name: cpu
Description: The number of CPU units used by the task as expressed in a task definition. It can be expressed as an integer using CPU units (for example, 1024
). It can also be expressed as a string using vCPUs (for example, 1 vCPU
or 1 vcpu
). String values are converted to an integer that indicates the CPU units when the task definition is registered. If you use the EC2 launch type, this field is optional. Supported values are between 128
CPU units (0.125
vCPUs) and 10240
CPU units (10
vCPUs). If you use the Fargate launch type, this field is required. You must use one of the following values. These values determine the range of supported values for the memory
parameter: The CPU units cannot be less than 1 vCPU when you use Windows containers on Fargate.
- 256 (.25 vCPU) - Available
memory
values: 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB) - 512 (.5 vCPU) - Available
memory
values: 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB) - 1024 (1 vCPU) - Available
memory
values: 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB) - 2048 (2 vCPU) - Available
memory
values: 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB) - 4096 (4 vCPU) - Available
memory
values: 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - 8192 (8 vCPU) - Available
memory
values: 16 GB and 60 GB in 4 GB increments This option requires Linux platform 1.4.0
or later. - 16384 (16vCPU) - Available
memory
values: 32GB and 120 GB in 8 GB increments This option requires Linux platform 1.4.0
or later.
created_at
Type: TIMESTAMP
Provider name: createdAt
Description: The Unix timestamp for the time when the task was created. More specifically, it’s for the time when the task entered the PENDING
state.
desired_status
Type: STRING
Provider name: desiredStatus
Description: The desired status of the task. For more information, see Task Lifecycle.
enable_execute_command
Type: BOOLEAN
Provider name: enableExecuteCommand
Description: Determines whether execute command functionality is turned on for this task. If true
, execute command functionality is turned on all the containers in the task.
ephemeral_storage
Type: STRUCT
Provider name: ephemeralStorage
Description: The ephemeral storage settings for the task.
size_in_gib
Type: INT32
Provider name: sizeInGiB
Description: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is 20
GiB and the maximum supported value is 200
GiB.
execution_stopped_at
Type: TIMESTAMP
Provider name: executionStoppedAt
Description: The Unix timestamp for the time when the task execution stopped.
fargate_ephemeral_storage
Type: STRUCT
Provider name: fargateEphemeralStorage
Description: The Fargate ephemeral storage settings for the task.
kms_key_id
Type: STRING
Provider name: kmsKeyId
Description: Specify an Key Management Service key ID to encrypt the ephemeral storage for the task.
size_in_gib
Type: INT32
Provider name: sizeInGiB
Description: The total amount, in GiB, of the ephemeral storage to set for the task. The minimum supported value is 20
GiB and the maximum supported value is 200
GiB.
group
Type: STRING
Provider name: group
Description: The name of the task group that’s associated with the task.
health_status
Type: STRING
Provider name: healthStatus
Description: The health status for the task. It’s determined by the health of the essential containers in the task. If all essential containers in the task are reporting as HEALTHY
, the task status also reports as HEALTHY
. If any essential containers in the task are reporting as UNHEALTHY
or UNKNOWN
, the task status also reports as UNHEALTHY
or UNKNOWN
. The Amazon ECS container agent doesn’t monitor or report on Docker health checks that are embedded in a container image and not specified in the container definition. For example, this includes those specified in a parent image or from the image’s Dockerfile. Health check parameters that are specified in a container definition override any Docker health checks that are found in the container image.
inference_accelerators
Type: UNORDERED_LIST_STRUCT
Provider name: inferenceAccelerators
Description: The Elastic Inference accelerator that’s associated with the task.
device_name
Type: STRING
Provider name: deviceName
Description: The Elastic Inference accelerator device name. The deviceName
must also be referenced in a container definition as a ResourceRequirement.
device_type
Type: STRING
Provider name: deviceType
Description: The Elastic Inference accelerator type to use.
last_status
Type: STRING
Provider name: lastStatus
Description: The last known status for the task. For more information, see Task Lifecycle.
launch_type
Type: STRING
Provider name: launchType
Description: The infrastructure where your task runs on. For more information, see Amazon ECS launch types in the Amazon Elastic Container Service Developer Guide.
memory
Type: STRING
Provider name: memory
Description: The amount of memory (in MiB) that the task uses as expressed in a task definition. It can be expressed as an integer using MiB (for example, 1024
). If it’s expressed as a string using GB (for example, 1GB
or 1 GB
), it’s converted to an integer indicating the MiB when the task definition is registered. If you use the EC2 launch type, this field is optional. If you use the Fargate launch type, this field is required. You must use one of the following values. The value that you choose determines the range of supported values for the cpu
parameter.
- 512 (0.5 GB), 1024 (1 GB), 2048 (2 GB) - Available
cpu
values: 256 (.25 vCPU) - 1024 (1 GB), 2048 (2 GB), 3072 (3 GB), 4096 (4 GB) - Available
cpu
values: 512 (.5 vCPU) - 2048 (2 GB), 3072 (3 GB), 4096 (4 GB), 5120 (5 GB), 6144 (6 GB), 7168 (7 GB), 8192 (8 GB) - Available
cpu
values: 1024 (1 vCPU) - Between 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB) - Available
cpu
values: 2048 (2 vCPU) - Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB) - Available
cpu
values: 4096 (4 vCPU) - Between 16 GB and 60 GB in 4 GB increments - Available
cpu
values: 8192 (8 vCPU) This option requires Linux platform 1.4.0
or later. - Between 32GB and 120 GB in 8 GB increments - Available
cpu
values: 16384 (16 vCPU) This option requires Linux platform 1.4.0
or later.
overrides
Type: STRUCT
Provider name: overrides
Description: One or more container overrides.
container_overrides
Type: UNORDERED_LIST_STRUCT
Provider name: containerOverrides
Description: One or more container overrides that are sent to a task.
command
Type: UNORDERED_LIST_STRING
Provider name: command
Description: The command to send to the container that overrides the default command from the Docker image or the task definition. You must also specify a container name.
cpu
Type: INT32
Provider name: cpu
Description: The number of cpu
units reserved for the container, instead of the default value from the task definition. You must also specify a container name.
environment
Type: UNORDERED_LIST_STRUCT
Provider name: environment
Description: The environment variables to send to the container. You can add new environment variables, which are added to the container at launch, or you can override the existing environment variables from the Docker image or the task definition. You must also specify a container name.
name
Type: STRING
Provider name: name
Description: The name of the key-value pair. For environment variables, this is the name of the environment variable.
value
Type: STRING
Provider name: value
Description: The value of the key-value pair. For environment variables, this is the value of the environment variable.
environment_files
Type: UNORDERED_LIST_STRUCT
Provider name: environmentFiles
Description: A list of files containing the environment variables to pass to a container, instead of the value from the container definition.
type
Type: STRING
Provider name: type
Description: The file type to use. Environment files are objects in Amazon S3. The only supported value is s3
.
value
Type: STRING
Provider name: value
Description: The Amazon Resource Name (ARN) of the Amazon S3 object containing the environment variable file.
memory
Type: INT32
Provider name: memory
Description: The hard limit (in MiB) of memory to present to the container, instead of the default value from the task definition. If your container attempts to exceed the memory specified here, the container is killed. You must also specify a container name.
memory_reservation
Type: INT32
Provider name: memoryReservation
Description: The soft limit (in MiB) of memory to reserve for the container, instead of the default value from the task definition. You must also specify a container name.
name
Type: STRING
Provider name: name
Description: The name of the container that receives the override. This parameter is required if any override is specified.
resource_requirements
Type: UNORDERED_LIST_STRUCT
Provider name: resourceRequirements
Description: The type and amount of a resource to assign to a container, instead of the default value from the task definition. The only supported resource is a GPU.
type
Type: STRING
Provider name: type
Description: The type of resource to assign to a container.
value
Type: STRING
Provider name: value
Description: The value for the specified resource type. When the type is GPU
, the value is the number of physical GPUs
the Amazon ECS container agent reserves for the container. The number of GPUs that’s reserved for all containers in a task can’t exceed the number of available GPUs on the container instance that the task is launched on. When the type is InferenceAccelerator
, the value
matches the deviceName
for an InferenceAccelerator specified in a task definition.
cpu
Type: STRING
Provider name: cpu
Description: The CPU override for the task.
ephemeral_storage
Type: STRUCT
Provider name: ephemeralStorage
Description: The ephemeral storage setting override for the task. This parameter is only supported for tasks hosted on Fargate that use the following platform versions:- Linux platform version
1.4.0
or later. - Windows platform version
1.0.0
or later.
size_in_gib
Type: INT32
Provider name: sizeInGiB
Description: The total amount, in GiB, of ephemeral storage to set for the task. The minimum supported value is 20
GiB and the maximum supported value is 200
GiB.
execution_role_arn
Type: STRING
Provider name: executionRoleArn
Description: The Amazon Resource Name (ARN) of the task execution role override for the task. For more information, see Amazon ECS task execution IAM role in the Amazon Elastic Container Service Developer Guide.
inference_accelerator_overrides
Type: UNORDERED_LIST_STRUCT
Provider name: inferenceAcceleratorOverrides
Description: The Elastic Inference accelerator override for the task.
device_name
Type: STRING
Provider name: deviceName
Description: The Elastic Inference accelerator device name to override for the task. This parameter must match a deviceName
specified in the task definition.
device_type
Type: STRING
Provider name: deviceType
Description: The Elastic Inference accelerator type to use.
memory
Type: STRING
Provider name: memory
Description: The memory override for the task.
task_role_arn
Type: STRING
Provider name: taskRoleArn
Description: The Amazon Resource Name (ARN) of the role that containers in this task can assume. All containers in this task are granted the permissions that are specified in this role. For more information, see IAM Role for Tasks in the Amazon Elastic Container Service Developer Guide.
Type: STRING
Provider name: platformFamily
Description: The operating system that your tasks are running on. A platform family is specified only for tasks that use the Fargate launch type. All tasks that run as part of this service must use the same platformFamily
value as the service (for example, LINUX.
).
Type: STRING
Provider name: platformVersion
Description: The platform version where your task runs on. A platform version is only specified for tasks that use the Fargate launch type. If you didn’t specify one, the LATEST
platform version is used. For more information, see Fargate Platform Versions in the Amazon Elastic Container Service Developer Guide.
pull_started_at
Type: TIMESTAMP
Provider name: pullStartedAt
Description: The Unix timestamp for the time when the container image pull began.
pull_stopped_at
Type: TIMESTAMP
Provider name: pullStoppedAt
Description: The Unix timestamp for the time when the container image pull completed.
started_at
Type: TIMESTAMP
Provider name: startedAt
Description: The Unix timestamp for the time when the task started. More specifically, it’s for the time when the task transitioned from the PENDING
state to the RUNNING
state.
started_by
Type: STRING
Provider name: startedBy
Description: The tag specified when a task is started. If an Amazon ECS service started the task, the startedBy
parameter contains the deployment ID of that service.
stop_code
Type: STRING
Provider name: stopCode
Description: The stop code indicating why a task was stopped. The stoppedReason
might contain additional details. For more information about stop code, see Stopped tasks error codes in the Amazon ECS Developer Guide.
stopped_at
Type: TIMESTAMP
Provider name: stoppedAt
Description: The Unix timestamp for the time when the task was stopped. More specifically, it’s for the time when the task transitioned from the RUNNING
state to the STOPPED
state.
stopped_reason
Type: STRING
Provider name: stoppedReason
Description: The reason that the task was stopped.
stopping_at
Type: TIMESTAMP
Provider name: stoppingAt
Description: The Unix timestamp for the time when the task stops. More specifically, it’s for the time when the task transitions from the RUNNING
state to STOPPING
.
Type: UNORDERED_LIST_STRING
task_arn
Type: STRING
Provider name: taskArn
Description: The Amazon Resource Name (ARN) of the task.
task_definition_arn
Type: STRING
Provider name: taskDefinitionArn
Description: The ARN of the task definition that creates the task.
version
Type: INT64
Provider name: version
Description: The version counter for the task. Every time a task experiences a change that starts a CloudWatch event, the version counter is incremented. If you replicate your Amazon ECS task state with CloudWatch Events, you can compare the version of a task reported by the Amazon ECS API actions with the version reported in CloudWatch Events for the task (inside the detail
object) to verify that the version in your event stream is current.