The Amazon ECS CLI enables users to run their applications on ECS/Fargate using the Docker Compose file format, quickly provision resources, push/pull images in ECR, and monitor running applications on ECS/Fargate.
With the current version of the ecs-cli (1.21.0) it is possible to specify CPU / memory requirements for the task but not for the actual container. This has an impact for Windows based containers as the default CPU value for a container is 0. This results in the container getting only 1% CPU cycles of the specified task CPU configuration as described in the documentation
On Windows container instances, the CPU limit is enforced as an
absolute limit, or a quota. Windows containers only have access
to the specified amount of CPU that is defined in the task definition.
A null or zero CPU value is passed to Docker as 0, which Windows
interprets as 1% of one CPU.
At the time of opening this issue, the documentation is not describing a possibility to specify the container CPU values.
I am trying to run Windows containers and am affected with containers getting not enough CPU resources to start properly.
Alternatives
A workaround is to use the aws cli and specify the task definition in the "traditional" way as there is a possibility to specify the container parameters.
With the current version of the ecs-cli (1.21.0) it is possible to specify CPU / memory requirements for the task but not for the actual container. This has an impact for Windows based containers as the default CPU value for a container is 0. This results in the container getting only 1% CPU cycles of the specified task CPU configuration as described in the documentation
At the time of opening this issue, the documentation is not describing a possibility to specify the container CPU values.
Configurations used
The used service configuration:
The ecs-params file:
The command to create the service
Context
I am trying to run Windows containers and am affected with containers getting not enough CPU resources to start properly.
Alternatives
A workaround is to use the aws cli and specify the task definition in the "traditional" way as there is a possibility to specify the container parameters.
This is a :rocket: Feature Request