Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

While creating new Azure Function App in what scenario do I select operating system other than Windows?

We created and tested several Azure Function Apps hosted at Windows. While creating new Azure Function App in what scenario do I select OS other than Windows? Meaning Linux or Docker.

I created test instances for all three OS selection options and basic settings of each of them appear to be very close.

options for new Function App

like image 903
rudolf_franek Avatar asked Jun 17 '18 19:06

rudolf_franek


2 Answers

Linux or Docker is useful if your functions have dependencies that only work on Linux/Docker. For example, some node.js native libraries only work on Linux, and will never work on Windows.

If you don't need Linux for anything specific, then I suggest sticking to Windows since that is currently (at the time of writing) the best and most supported environment for running Azure Functions.

like image 81
Chris Gillum Avatar answered Oct 05 '22 21:10

Chris Gillum


Azure Functions 2.0 runtime is based on .NET Core, so it is cross-platform. If you choose Linux/Docker, Functions runtime will be deployed on Linux.

2.0 is still in preview, so Linux/Docker are not supported in production yet. For now, Consumption Plan (pay per call) is not supported.

See The Azure Functions on Linux Preview. Quote:

Functions on Linux can be hosted in a dedicated App Service tier in 2 different modes:

  • You bring the Function App code and we provide and manage the container, no specific Docker related knowledge required.
  • You bring your own Docker container including the Azure Functions runtime 2.0, specific dependencies, and Function App code.
like image 39
Mikhail Shilkov Avatar answered Oct 05 '22 20:10

Mikhail Shilkov