This document discusses using Docker and microservices in production. It begins with an introduction and background on monolithic architectures and microservices architectures. It then provides an overview of Docker containers, how they can be used to implement a microservices architecture with tools like Rancher for deployment, service discovery, load balancing and scaling. The document demonstrates these concepts by walking through building a sample application with a web service and random number generation service running in Docker containers behind a load balancer.