Without a doubt Heroku is ultimately easier but I found that once I spent the time playing with ECS and using LLM tools to understand permissions in AWS it made a lot more sense. Now its quick enough and cheaper for me.
I don't think the way you are doing it is the worst way. I am biggest expert here of course. I do mine via a github action, right now it triggers on merges to main but could also be setup independently.
Condensed but I use
1) "build-push-action" - github action to send an image to ECR
2) "aws ecs update-service --cluster <name> --service <service> --force-new-deployment" for the deployment
I don't think the way you are doing it is the worst way. I am biggest expert here of course. I do mine via a github action, right now it triggers on merges to main but could also be setup independently.
Condensed but I use 1) "build-push-action" - github action to send an image to ECR 2) "aws ecs update-service --cluster <name> --service <service> --force-new-deployment" for the deployment