In my case I used container which had size of 12GB. It contained yolo model for inference, so the container was large. By default the size of template for ECS ec2 is 30GB, so it could not conain entire OS+Image.
The solution was changing the template root storage to 100GB.
Another case of PROVISIONING stuck was with spot instances. I wanted to save on inference costs, so wanted to run spot instead of on-Demand.
I set the filter to GPU accelerator, and selected all the instances which had GPU. The issue was that there are also non-ndidia GPUs in AWS. So Nvidia driver linux got installed on AMD machines, and the tasks got stuck in PROVISIONING state.