adet
attempts to provide maximum DWIM for projects using docker, Docker
Compose and AWS ECS from YAML configuration files. It supports the three
projects I'm working on nicely, each one of which has several component
Docker images organized into tasks and services, and deployed on ECS.
Config:
version: 0.01
registry: 225802617615.dkr.ecr.eu-west-1.amazonaws.com
defaults:
aws_profile: osc
Allows:
$ adet login https://225802617615.dkr.ecr.eu-west-1.amazonaws.com
Logging into 225802617615.dkr.ecr.eu-west-1 as osc
Login Succeeded
Config:
images:
myImage:
repository : myImageB
context : ./imageb
dockerfile : ./imageb/docker.yaml
build_requires:
- MYENVVAR
Allows:
$ MYENVAR=foo adet images build myImageB
Or:
$ adet images pull myImageB
And:
$ adet images push myImageB
Config:
tasks:
myImageT:
image: myImageB
environment:
- name: foobar
value: baz1
dev_mount:
- ./:/opt/mycode
- /some/path:/opt/path
ports:
- 3000:5000
Allows:
$ adet compose [any command docker-compose accepts]
With the addition of:
$ adet compose shell myImageT
Config:
services:
myService:
task: myImageT
desired: 2
Allows:
$ adet deploy_service myService