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 you monolithic codebase into multiple microservices. Why is Docker a key component in this new architecture, and what does this all even mean?