ecsy icon indicating copy to clipboard operation
ecsy copied to clipboard

Drop support for docker-compose, make task defs great again

Open lox opened this issue 7 years ago • 3 comments

This drops support entirely for docker-compose files, in favour of native ECS task definitions, with the caveat that you can write them in YAML and use env var interpolation.

lox avatar Oct 03 '17 02:10 lox

I think what I'm looking for is;

  1. Define cluster, load balancers, services etc with arbitrary standard CloudFormation templates.
  2. Trigger deployments from CI (i.e. update task definition with new docker image tag)
  3. Ability to perform CloudFormation Change Sets / Stack Update including for the Service / Task Definition without the deployed docker image tag version getting out of sync with CI deploys.

One solution would be using pure CloudFormation for all three; but a stack update for each deploy might be too heavy-weight?

Another solution would be a tool which can extract the Task Definition from the CloudFormation template so it can be updated (docker image tag) and send to ECS API to trigger deploys. Or similarly, the Task Definition starts as a separate file and a tool splices it into the CloudFormation templates before they're send to AWS.

Or (I think this was an idea from @Vektah) CloudFormation manages everything except the Task Definition; perhaps creating an empty placeholder which is then updated via API/deploys.

It seems like this PR is trying to address some similar goals. Any difference of opinion or other ideas?

pda avatar Oct 03 '17 23:10 pda

Yup, I agree with all of those and intend to basically implement that @pda. I'll create an issue to track that, this PR is mostly around removing docker-compose magic.

lox avatar Oct 04 '17 04:10 lox

I removed a lot of the CLI changes from scope here because they merit discussion on their own. Will just make the minimum change to remove docker-compose.

lox avatar Oct 04 '17 04:10 lox