[ECS] [request]: Support alternative container runtimes with ecs-agent (containerd, podman, etc.)
- Dominant language
- Shell
- Stars
- 5.4k
- Forks
- 334
- PR merge metrics
- No merged PRs in 30d
Description
### Community Note
* Please vote on this issue by adding a 👍 [reaction](https://blog.github.com/2016-03-10-add-reactions-to-pull-requests-issues-and-comments/) to the original issue to help the community and maintainers prioritize this request
* Please do not leave "+1" or "me too" comments, they generate extra noise for issue followers and do not help prioritize the request
* If you are interested in working on this issue or have submitted a pull request, please leave a comment
It would be great if ecs-agent supported containerd instead of docker for the container runtime. I frequently get docker segfaults on various versions of Amazon Linux 1 and Amazon Linux 2 with the provided Docker packages. It would be nice to have an alternative with less features but hopefully more stability.
What do you want us to build?
The option to run ecs-agent with containerd execution engine instead of docker.
**Which service(s) is this request for?**
ECS
**Tell us about the problem you're trying to solve. What are you trying to do, and why is it hard?**
Fewer pages and possible customer outages. When docker dies the ecs-agent eventually dies too. Once ecs-agent dies it kills all of the containers that were started via the ecs-agent without graceful shutdown.
**Are you currently working around this issue?**
When the docker daemon crashes ecs-agent also dies. When this happens we automatically mark the instances as unhealthy.
**Attachments**
If you think you might have additional information that you'd like to include via an attachment, please do - we'll take a look. (Remember to remove any personally-identifiable information.)
Contributor guide
Research direction
Start by reviewing ecs-agent's execution-engine integration and its dependency on the Docker daemon, then compare the requested containerd and Podman alternatives described in the issue. Done would mean defining and implementing support for running ecs-agent with an alternative runtime while preserving container lifecycle behavior when Docker is unavailable.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- docker
- Domain
- cloud, devops
- Issue type
- Feature
- Difficulty
- 5/5
- Estimated time
- Over a week
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 20/100