With the growing popularity of containerized applications, and the need or desire for companies to shift (part of) their infrastructure to the cloud, a good cloud strategy for your multi-container, multi-host Docker architecture becomes very important.
I'll give you a short intro on how Docker is used on-premise, and quickly outline some cloud scenarios where Docker will really shine.
Docker is built for the cloud and forces you to partition your applications, services and architecture in such a way. We'll discuss the various cloud provider offerings when it comes to Docker and try to derive some meaningful conclusions
- (very) short Docker intro
- Very Simple : Single Container - Single Host
- Slightly more complicated : Mappings / External Config
- Lot more complicated : Linking Containers / port mappings / ....
- Moving Multi Container - Single Host
- Docker Compose to the rescue (simplifying things / centralizing config and containers)
- How not to do it (custom scripting, writing your own "compose" , ....)
- Multi Container - Multi Host
- DC/OS / Swarm / Kubernetes
- Why move it to the cloud
- What do we want out of it
- Service Discovery
- Docker Container Registries
- Docker Service Orchestration
- Tooling / CLIs / SDKs
- IAAS vs PAAS offerings
- Serverless architectures vs Containerized Apps
- Docker CLoud
- Amazon EC2 Container Services
- Azure Container Service
- Intro
- ....
- Case 1 : PAAS : ECS
- Service orchestration / auto-scaling / resilience / .....
- Pro's / Con's / Docker versions / Lack of third party orchstration support / ...
- Case 2 : IAAS : Docker CloudFormation templates
- Pro's / Con's
- Case 1 : PAAS : Azure Container Service
- Orchestration / auto-scaling / resilience / .....
- Pro's / Con's / Docker versions / Swarm / DCOS / Kubernetes versions / ...
- Pro's / Con's
- Case 2 : IAAS : Docker CloudFormation templates
- Pro's / Con's
- What will benefit you from moving to the cloud
- Choose a model that fits for you IAAS / PAAS
- Additional features : continuous deployment