Docker and the Rise of Microservices

As an application attracts more users, the ability to scale becomes paramount. The solution often is to decouple your application and turn your monolithic codebase into multiple microservices. Why is Docker a key component in this new architecture, and what does this all even mean?