AWS ECS (and AWS Fargate) Features ¶
Container Definition ¶
|
Property Name |
Supported |
Override |
Note/Extras |
Compose/X Property |
|---|---|---|---|---|
|
Command |
Y |
Y |
service.command |
|
|
Cpu |
Y |
Y |
Auto-defined if not set for Fargate |
service.deploy.resources |
|
DependsOn |
Y |
Y |
When joined to same family, can depend on each other |
service.deploy.labels.ecs.task.family service.deploy.labels.ecs.depends.condition |
|
DisableNetworking |
N |
N |
N/A |
|
|
DnsSearchDomains |
N |
N |
Not supported with AWS Fargate |
|
|
DnsServers |
N |
N |
Not supported with AWS Fargate |
|
|
DockerLabels |
N |
Y |
Will be added in future version |
|
|
DockerSecurityOptions |
N |
N |
Not supported with AWS Fargate |
|
|
EntryPoint |
Y |
Y |
service.entrypoint |
|
|
Environment |
Y |
Y |
service.environment |
|
|
EnvironmentFiles |
Y |
Y |
files automatically copied from local to AWS S3 |
service.env_file |
|
Essential |
Y |
Y |
Automatically determined based on other deploy labels |
|
|
ExtraHosts |
N |
N |
Not supported with AWS Fargate |
|
|
FirelensConfiguration |
N |
N |
||
|
HealthCheck |
Y |
Y |
Full docker-compose support with commands. Separate healcheck with ELBv2 |
service.healthcheck |
|
Hostname |
Y |
Y |
Disabled with AWS Fargate |
|
|
Image |
Y |
Y |
service.image |
|
|
Interactive |
N |
N |
||
|
Links |
N |
N |
Not supported with awsvpc network |
|
|
LinuxParameters |
N |
N |
||
|
LogConfiguration |
Y |
Y |
Full AWS CloudWatch support |
service.logging service.x-logging |
|
Memory |
Y |
Y |
Auto-defined if not set for Fargate |
service.deploy.resources |
|
MemoryReservation |
service.deploy.resources |
|||
|
MountPoints |
Y |
Y |
service.volumes |
|
|
Name |
Y |
Y |
Generated by CFN |
service.name |
|
PortMappings |
Y |
Y |
Full support. Overrides to awsvpc for network |
service.ports |
|
Privileged |
N |
N |
Not supported with AWS Fargate |
|
|
PseudoTerminal |
N |
N |
||
|
ReadonlyRootFilesystem |
N |
N |
||
|
RepositoryCredentials |
Y |
Y |
service.x-aws-pull_policy |
|
|
ResourceRequirements |
N |
N |
||
|
Secrets |
Y |
Y |
Strongly automated for RDS and others |
secrets.x-secrets |
|
StartTimeout |
N |
N |
||
|
StopTimeout |
N |
N |
||
|
SystemControls |
N |
N |
||
|
Ulimits |
Y |
Y |
Automatically disable non AWS Fargate supported |
service.ulimits |
|
User |
Y |
Y |
Expects IDs as docker-compose does |
service.user |
|
VolumesFrom |
N |
N |
To be implemented |
|
|
WorkingDirectory |
N |
N |
Task Definition ¶
|
Property Name |
Supported |
Override |
Note/Extras |
Compose/X Property |
|---|---|---|---|---|
|
ContainerDefinitions |
Y |
Y |
Strictly generated by Compose-X |
services |
|
Cpu |
Y |
Y |
Automatic value for Fargate based on service.resources |
deploy.resources services.deploy |
|
ExecutionRoleArn |
Y |
Y |
Strictly generated by Compose-X |
|
|
Family |
Y |
Y |
Uses service name or uses label |
deploy.labels.ecs.task.family labels |
|
InferenceAccelerators |
N |
N |
||
|
IpcMode |
N |
N |
||
|
Memory |
Y |
Y |
|
deploy.resources |
|
NetworkMode |
Y |
N |
Always awsvpc |
|
|
PidMode |
N |
N |
Not supported in Fargate |
|
|
PlacementConstraints |
N |
N |
Not applicable to Fargate |
|
|
ProxyConfiguration |
Y |
Y |
See x-appmesh |
appmesh_syntax_reference |
|
RequiresCompatibilities |
Y |
N |
EC2 and Fargate always defined |
|
|
Tags |
Y |
Y |
Generated by Compose-X |
See x-tags |
Service Definition ¶
|
Property Name |
Supported |
Override |
Note/Extras |
Compose/X Property |
|---|---|---|---|---|
|
CapacityProviderStrategy |
N |
|||
|
Cluster |
Y |
Y |
x-cluster to create or use |
ecs_cluster_syntax_reference |
|
DeploymentConfiguration |
N |
|||
|
DeploymentController |
Y |
N |
To date, only ECS |
|
|
DesiredCount |
Y |
N/A |
service.deploy.replicas services.deploy services.x-scaling |
|
|
EnableECSManagedTags |
Y |
N |
||
|
LoadBalancers |
Y |
N/A |
||
|
NetworkConfiguration |
Y |
Y |
service.networks services.x-network |
|
|
PlacementConstraints |
N |
N/A |
||
|
PlacementStrategies |
N |
N/A |
||
|
PlatformVersion |
Y |
Y |
Default to 1.4.0 for full features support |
|
|
PropagateTags |
Y |
N |
||
|
Role |
Y |
N |
Can extend default with x-aws- or x-iam |
|
|
SchedulingStrategy |
N |
N/A |
||
|
ServiceArn |
N |
N/A |
||
|
ServiceName |
Y |
N |
Stricly generated by AWS CFN |
|
|
ServiceRegistries |
Y |
Y |
See AppMesh |
appmesh_syntax_reference |
|
Tags |
Y |
Y |
||
|
TaskDefinition |
Y |
N |
Strictly generated by Compose-X and AWS CFN |
Cluster definition ¶
All properties for AWS::ECS::Cluster are supported. Pass them through ecs_cluster_syntax_reference