Unless you are Google or Amazon, and need to run thousands of servers, managing your hardware in some data center does not provide many benefits in 2017.
Cloud providers offer to host a solution that is often cheaper than deploying and maintaining your infrastructure. Amazon Web Services (AWS) and others have numerous services that let you manage virtual machines from a web console, and they add new features every year.
One of the latest AWS additions, for example, is Amazon Lambda. Lambda lets you trigger a Python script when something happens in your deployments. With Lambda, you do not have to worry about setting up a server and a cron job, or some form of messaging. AWS takes care of executing your script in a VM automatically, and you only pay for execution time.
Combined with what Docker has to offer, this kind of feature really changes how applications can be deployed in the cloud, and provide a fair amount of flexibility. For instance, you do not have to...