Advanced Docker concepts and container orchestration
In this workshop, we will show how to build a distributed application with Docker Compose. In true microservices style, our sample code will use multiple different languages: Python, Ruby, Node.js ... Then we will show how to run this application on a cluster, using Docker Swarm as our resource scheduler. The cluster will be provisioned with Docker Machine. We will discuss service discovery, load balancing, and show how to implement those patterns with simple tools. We will also present the networking model of containers, and how to run containerized applications spanning multiple Docker hosts. On the "ops" side, we will give recipes to implement cleanly ops tasks like logging, backups, and more. This will be hands-on: we will provide sample code and we will run it on actual clusters. You won't need to pre-install Docker before the course: each student will be given credentials to connect to an individual cluster of virtual machines. So all you need is a computer with a SSH client!