Is docker web-scale?
Overview
Teaching: 10 min
Exercises: 0 minQuestions
How much of what I have told you is wrong?
Objectives
Start considering the changes required to horizontally scale docker applications in the cloud
All of the examples in this workshop have been designed for a single Docker host where one person is in charge. This is fine for a developer’s system, or on a very limited production system, but this doesn’t scale up.
A few examples:
- volumes: So far volumes have been on a single host. When running applications on a Docker cluster a volume on one host is inaccessible on another, some form of networked storage is needed.
- ports: Manually defining port-forwarding is problematic when multiple users are running applications, especially when running independent copies of the same application. Automatic port forwarding requires some sort of discovery method so external clients can connect.
- Managing a large number of containers or deployments over multiple hosts is complicated.
Many of these issues will become apparent when you start doing advanced work with devspace.
Advanced orchestration in production:
- Kubernetes is an orchestration system created and open-sourced by Google. Try the interactive online tutorials
- Docker Swarm
- Apache Mesos and the Datacenter Operating system
- Rancher
The dark side…
- Why would anyone choose Docker over fat binaries?
- Docker in Production: A History of Failure
- Docker in Production: An Update
Key Points
Scaling Docker in production is complicated