🚨 This is very old and out-of-date: Check out https://github.com/aws/copilot-cli. (Also I'm sorry AWS folks, I wasn't as kind as I should have been in those issues).
A tool for managing and deploying ECS clusters, because the official one is terrible
Originally 99designs/ecs-cli, many thanks to those guys for being awesome and making it possible for me to release it open-source.
- CloudFormation based - Network stack, ECS cluster and ECS services
- Support for managing ECS services with ELB loadbalancers
- Designed for managing many ECS clusters
- Built-in support for common third-party services like Datadog
- Derives ECS Task Definitions from docker-compose v2 definitions
go install github.com/lox/ecsy@latest
# create an ecs cluster and supporting infrastructure (vpc, autoscale group, security groups, etc)
ecsy create-cluster --cluster example --keyname lox --type m4.large --count 4
# create an ecs task and service from a docker-compose file
ecsy create-service --cluster example -f docker-compose.yml# Creates and deploys a new task with the helloworld container updated with a new image tag
ecsy deploy --cluster example -f docker-compose.yml helloworld=:v2Setup the build dependencies.
make setup
Install ecsy.
make install
The main issue with amazon-ecs-cli is that it tries to emulate the docker-compose interface, which isn't a sensible abstraction and ends up making the architecture overly complicated. Contributing the changes we wanted upstream just wasn't viable, and beyond that issues go unanswered and development seems stagnant: