Ever wondered why it was not possible to just publish Docker containers to Azure? Or have you been worried because App Services is running on Windows servers instead of trusty old Linux?
Azure App Services supports .NET, Java, Node.js, Python, and PHP. And as most of you are probably aware, all this is running on Windows Server machines. But now, there's Azure Web App on Linux, available as a public preview. Not too much of a shock? Wait for it. Besides just running on Linux, this pretty little package holds a big surprise.
By the way, Azure App Services is really just a marketing-driven umbrella term for Azure web apps, API apps, and mobile apps. It describes the PaaS platform that allows you to easily publish your frontends, your API backends, or whatever you see fit. It is already Microsoft's second-generation PaaS approach, succeeding Azure Cloud Services with its web and worker roles.
Back to the Linux preview. The Web App on Linux preview is available on Azure Portal for everyone. Just click "Add new Resource" and enter "web app Linux" in the search field.
What you will see now is the really interesting part. It's not just you selecting your technology as you did with the Windows-based offering. This time, you have to pick a Docker container as the platform for running your web app. You can choose between several Node.js, PHP, and .NET Core images. Right, .NET core. Microsoft really loves to show off their technologies running on Linux. And I don't get tired of it.
But wait, there's still more. If you feel like experimenting with something a little bit more individual — it's Docker containers, after all — you can also choose to use any image from Docker Hub's private and public repositories.
And, finally, you might even pick your private registry as an image source.
So, in my humble opinion, this makes Web App on Linux much more than the same thing running on a different OS. Despite being labeled as "Web App," it's really a platform for publishing your Docker containers, which makes it suitable for running almost anything on Azure Web App.
Disclaimer: I work for Dynatrace, a company focused on Application Performance Monitoring. The following screenshot is taken from the Dynatrace product. I will use it to visualize some inside information, which is not available from stock Azure Portal screens. So, if you feel uncomfortable with that, please feel free to bounce.
Azure Web App on Linux runs on Debian Linux 8, with Kernel 4.4.0-53-generic. The single physical core and the memory limit is roughly in accordance with the chosen pricing tier.
Resource usage and response times are fully within expectations (if you may call it that at 4 requests per minute)
Give Azure Web App on Linux a try. It's container based nature is probably well worth the effort. And it should provide you with one of the most convenient platforms available.