Building microservice systems with Docker and Kubernetes : understanding multi-tier application development from creating services through hosting at scale - Straub, Ben (O'Reilly, 2016)
"This course teaches you how to build microservice systems hosted with Kubernetes. It's intended for intermediate to advanced developers or DevOps engineers who have problems they think Kubernetes will solve, but are not sure about the best way to move forward. Participants should have some experience working on web applications as this is not a course on the basics of web hosting. Prerequisites include a computer with Docker installed and some capability to run a Kubernetes cluster: This could be on physical machines, virtual machines using Vagrant, or an account (even a trial period account) with a cloud provider like Google or Amazon. Discover what Kubernetes is and how to get started using it; Understand what Docker is and how to make an application with it; Master the meaning of microservices and when and how to write them; Understand database set-ups, request routing, and load balancing; Explore API server choices (Flask, Gunicorn) and front-end tech choices (Ember.js, Nginx); Follow the creation of an email sending microservice from development through production; Understand cross-cutting concerns like caching, scaling, logging, metrics, security, and multi-tenancy."--Resource description page.