Class FargateTaskDefinitionProps
The properties for a task definition.
Inheritance
Namespace: Amazon.CDK.AWS.ECS
Assembly: Amazon.CDK.AWS.ECS.dll
Syntax (csharp)
public class FargateTaskDefinitionProps : Object, IFargateTaskDefinitionProps, ICommonTaskDefinitionProps
Syntax (vb)
Public Class FargateTaskDefinitionProps
Inherits Object
Implements IFargateTaskDefinitionProps, ICommonTaskDefinitionProps
Remarks
ExampleMetadata: infused
Examples
var fargateTaskDefinition = new FargateTaskDefinition(this, "TaskDef", new FargateTaskDefinitionProps {
MemoryLimitMiB = 512,
Cpu = 256
});
var container = fargateTaskDefinition.AddContainer("WebContainer", new ContainerDefinitionOptions {
// Use an image from DockerHub
Image = ContainerImage.FromRegistry("amazon/amazon-ecs-sample")
});
Synopsis
Constructors
FargateTaskDefinitionProps() |
Properties
Cpu | The number of cpu units used by the task. |
EphemeralStorageGiB | The amount (in GiB) of ephemeral storage to be allocated to the task. |
ExecutionRole | The name of the IAM task execution role that grants the ECS agent permission to call AWS APIs on your behalf. |
Family | The name of a family that this task definition is registered to. |
MemoryLimitMiB | The amount (in MiB) of memory used by the task. |
ProxyConfiguration | The configuration details for the App Mesh proxy. |
RuntimePlatform | The operating system that your task definitions are running on. |
TaskRole | The name of the IAM role that grants containers in the task permission to call AWS APIs on your behalf. |
Volumes | The list of volume definitions for the task. |
Constructors
FargateTaskDefinitionProps()
public FargateTaskDefinitionProps()
Properties
Cpu
The number of cpu units used by the task.
public Nullable<double> Cpu { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
For tasks using the Fargate launch type, this field is required and you must use one of the following values, which determines your range of valid values for the memory parameter:
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: Between 4096 (4 GB) and 16384 (16 GB) in increments of 1024 (1 GB)
4096 (4 vCPU) - Available memory values: Between 8192 (8 GB) and 30720 (30 GB) in increments of 1024 (1 GB)
Default: 256
EphemeralStorageGiB
The amount (in GiB) of ephemeral storage to be allocated to the task.
public Nullable<double> EphemeralStorageGiB { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
The maximum supported value is 200 GiB.
NOTE: This parameter is only supported for tasks hosted on AWS Fargate using platform version 1.4.0 or later.
Default: 20
ExecutionRole
The name of the IAM task execution role that grants the ECS agent permission to call AWS APIs on your behalf.
public IRole ExecutionRole { get; set; }
Property Value
Remarks
The role will be used to retrieve container images from ECR and create CloudWatch log groups.
Default: - An execution role will be automatically created if you use ECR images in your task definition.
Family
The name of a family that this task definition is registered to.
public string Family { get; set; }
Property Value
System.String
Remarks
A family groups multiple versions of a task definition.
Default: - Automatically generated name.
MemoryLimitMiB
The amount (in MiB) of memory used by the task.
public Nullable<double> MemoryLimitMiB { get; set; }
Property Value
System.Nullable<System.Double>
Remarks
For tasks using the Fargate launch type, this field is required and you must use one of the following values, which determines your range of valid 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)
Default: 512
ProxyConfiguration
The configuration details for the App Mesh proxy.
public ProxyConfiguration ProxyConfiguration { get; set; }
Property Value
Remarks
Default: - No proxy configuration.
RuntimePlatform
The operating system that your task definitions are running on.
public IRuntimePlatform RuntimePlatform { get; set; }
Property Value
Remarks
A runtimePlatform is supported only for tasks using the Fargate launch type.
Default: - Undefined.
TaskRole
The name of the IAM role that grants containers in the task permission to call AWS APIs on your behalf.
public IRole TaskRole { get; set; }
Property Value
Remarks
Default: - A task role is automatically created for you.
Volumes
The list of volume definitions for the task.
public IVolume[] Volumes { get; set; }
Property Value
IVolume[]
Remarks
For more information, see Task Definition Parameter Volumes.
Default: - No volumes are passed to the Docker daemon on a container instance.