title | description | ms.topic | ms.date |
---|---|---|---|
Create a function app on Linux from the Azure portal |
Learn how to create your first Azure Function for serverless execution using the Azure portal. |
how-to |
04/29/2020 |
Azure Functions lets you host your functions on Linux in a default Azure App Service container. This article walks you through how to use the Azure portal to create a Linux-hosted function app that runs in an App Service plan. You can also bring your own custom container.
[!INCLUDE quickstarts-free-trial-note]
Sign in to the Azure portal at https://portal.azure.com with your Azure account.
You must have a function app to host the execution of your functions on Linux. The function app provides an environment for execution of your function code. It lets you group functions as a logical unit for easier management, deployment, scaling, and sharing of resources. In this article, you create an App Service plan when you create your function app.
-
From the Azure portal menu or the Home page, select Create a resource.
-
In the New page, select Compute > Function App.
:::image type="content" source="./media/create-function-app-linux-app-service-plan/function-app-create-flow.png" alt-text="Create a function app in the Azure portal":::
-
On the Basics page, use the function app settings as specified in the following table.
Setting Suggested value Description Subscription Your subscription The subscription under which this new function app is created. Resource Group myResourceGroup Name for the new resource group in which to create your function app. Function App name Globally unique name Name that identifies your new function app. Valid characters are a-z
(case insensitive),0-9
, and-
.Publish Code (default) Option to publish code files or a Docker container. Runtime stack Preferred language Choose a runtime that supports your favorite function programming language. Choose .NET Core for C# and F# functions. Version Version number Choose the version of your installed runtime. Region Preferred region Choose a region near you or near other services your functions access. :::image type="content" source="./media/create-function-app-linux-app-service-plan/function-app-create-basics-linux.png" alt-text="Basics page":::
-
Select Next : Hosting. On the Hosting page, enter the following settings.
Setting Suggested value Description Storage account Globally unique name Create a storage account used by your function app. Storage account names must be between 3 and 24 characters in length and can contain numbers and lowercase letters only. You can also use an existing account, which must meet the storage account requirements. Operating system Linux An operating system is pre-selected for you based on your runtime stack selection, but you can change the setting if necessary. Plan Consumption (Serverless) Hosting plan that defines how resources are allocated to your function app. In the default Consumption plan, resources are added dynamically as required by your functions. In this serverless hosting, you pay only for the time your functions run. When you run in an App Service plan, you must manage the scaling of your function app. :::image type="content" source="./media/create-function-app-linux-app-service-plan/function-app-create-hosting-linux.png" alt-text="Hosting page":::
-
Select Next : Monitoring. On the Monitoring page, enter the following settings.
Setting Suggested value Description Application Insights Yes (default) Creates an Application Insights resource of the same App name in the nearest supported region. By expanding this setting or selecting Create new, you can change the Application Insights name or choose a different region in an Azure geography where you want to store your data. :::image type="content" source="./media/create-function-app-linux-app-service-plan/function-app-create-monitoring-linux.png" alt-text="Monitoring page":::
-
Select Review + create to review the app configuration selections.
-
On the Review + create page, review your settings, and then select Create to provision and deploy the function app.
-
Select the Notifications icon in the upper-right corner of the portal and watch for the Deployment succeeded message.
-
Select Go to resource to view your new function app. You can also select Pin to dashboard. Pinning makes it easier to return to this function app resource from your dashboard.
Even after your function app is available, it may take a few minutes to be fully initialized.
Next, you create a function in the new function app.
This section shows you how to create a function in your new function app in the portal.
Note
The portal development experience can be useful for trying out Azure Functions. For most scenarios, consider developing your functions locally and publishing the project to your function app using either Visual Studio Code or the Azure Functions Core Tools.
-
From the left menu of the Functions window, select Functions, then select Add from the top menu.
-
From the New Function window, select Http trigger.
-
In the New Function window, accept the default name for New Function, or enter a new name.
-
Choose Anonymous from the Authorization level drop-down list, and then select Create Function.
Azure creates the HTTP trigger function. Now, you can run the new function by sending an HTTP request.
-
In your new HTTP trigger function, select Code + Test from the left menu, then select Get function URL from the top menu.
-
In the Get function URL dialog box, select default from the drop-down list, and then select the Copy to clipboard icon.
-
Paste the function URL into your browser's address bar. Add the query string value
?name=<your_name>
to the end of this URL and press Enter to run the request.The following example shows the response in the browser:
The request URL includes a key that is required, by default, to access your function over HTTP.
-
When your function runs, trace information is written to the logs. To see the trace output, return to the Code + Test page in the portal and expand the Logs arrow at the bottom of the page.
[!INCLUDE Clean-up resources]
You have created a function app with a simple HTTP trigger function.
[!INCLUDE Next steps note]
For more information, see Azure Functions HTTP bindings.