Skip to content

Commit 3b4b52d

Browse files
committed
Functions ACA additioons + portal
1 parent 896ed4a commit 3b4b52d

11 files changed

+76
-33
lines changed

articles/azure-functions/functions-continuous-deployment.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -193,7 +193,7 @@ To enable basic authentication to the `scm` endpoint:
193193

194194
1. In the [Azure portal](https://portal.azure.com), navigate to your function app.
195195

196-
1. In the app's left menu, select **Configuration** > **General settings**.
196+
1. In the app's left menu, select **Settings** > **Configuration** > **General settings**.
197197

198198
1. Set **SCM Basic Auth Publishing Credentials** to **On**, then select **Save**.
199199

articles/azure-functions/functions-core-tools-reference.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ When you supply `<PROJECT_FOLDER>`, the project is created in a new folder with
5353
|
5454

5555
> [!NOTE]
56-
> When you use either `--docker` or `--dockerfile` options, Core Tools automatically create the Dockerfile for C#, JavaScript, Python, and PowerShell functions. For Java functions, you must manually create the Dockerfile. For more information, see [Creating containerized function apps](functions-how-to-custom-container.md#creating-containerized-function-apps).
56+
> When you use either `--docker` or `--docker-only` options, Core Tools automatically create the Dockerfile for C#, JavaScript, Python, and PowerShell functions. For Java functions, you must manually create the Dockerfile. For more information, see [Creating containerized function apps](functions-how-to-custom-container.md#creating-containerized-function-apps).
5757
5858
## func logs
5959

articles/azure-functions/functions-develop-vs-code.md

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,7 @@ ms.topic: conceptual
55
ms.devlang: csharp
66
# ms.devlang: csharp, java, javascript, powershell, python
77
ms.custom: devdivchpfy22, vscode-azure-extension-update-complete, devx-track-extended-java, devx-track-js, devx-track-python, ignite-2023, devx-track-ts
8-
ms.date: 03/14/2024
8+
ms.date: 07/17/2024
99
zone_pivot_groups: programming-languages-set-functions
1010
#Customer intent: As an Azure Functions developer, I want to understand how Visual Studio Code supports Azure Functions so that I can more efficiently create, publish, and maintain my Functions projects.
1111
---
@@ -98,37 +98,27 @@ You also need these prerequisites to [run and debug your functions locally](#run
9898

9999
The Functions extension lets you create the required function app project at the same time you create your first function. Use these steps to create an HTTP-triggered function in a new project. An [HTTP trigger](functions-bindings-http-webhook.md) is the simplest function trigger template to demonstrate.
100100

101-
1. In the Activity bar, select the Azure icon. In the **Workspace (Local)** area, open the **+** list, and select **Create Function**.
101+
1. In Visual Studio Code, press <kbd>F1</kbd> to open the command palette and search for and run the command `Azure Functions: Create New Project...`. Select the directory location for your project workspace, and then choose **Select**.
102102

103-
:::image type="content" source="./media/functions-create-first-function-vs-code/create-new-project.png" alt-text="Screenshot of create a new project window.":::
103+
You can either create a new folder or choose an empty folder for the project workspace, but don't choose a project folder that's already part of a workspace.
104104

105-
1. When prompted, select **Create new project**. Select the directory location for your project workspace, and then choose **Select**.
106-
107-
You can either create a new folder or choose an empty folder for the project workspace, but don't choose a project folder that's already part of a workspace.
105+
You can instead run the command `Azure Functions: Create New Containerized Project...` to also get a Dockerfile generated for the project.
108106

109107
1. When prompted, **Select a language** for your project. If necessary, choose a specific language version.
110108

111109
1. Select the **HTTP trigger** function template, or you can select **Skip for now** to create a project without a function. You can always [add a function to your project](#add-a-function-to-your-project) later.
112110

113-
:::image type="content" source="./media/functions-develop-vs-code/select-http-trigger.png" alt-text="Screenshot for selecting HTTP trigger.":::
114-
115111
> [!TIP]
116112
> You can view additional templates by selecting the **Change template filter** option and setting the value to **Core** or **All**.
117113
118114
1. For the function name, enter **HttpExample**, select Enter, and then select **Function** authorization.
119115

120116
This authorization level requires that you provide a [function key](functions-bindings-http-webhook-trigger.md#authorization-keys) when you call the function endpoint.
121117

122-
:::image type="content" source="./media/functions-develop-vs-code/create-function-auth.png" alt-text="Screenshot for creating function authorization.":::
123-
124118
1. From the dropdown list, select **Add to workspace**.
125119

126-
:::image type="content" source="./media/functions-develop-vs-code/add-to-workplace.png" alt-text=" Screenshot for selectIng Add to workplace.":::
127-
128120
1. In the **Do you trust the authors of the files in this folder?** window, select **Yes**.
129121

130-
:::image type="content" source="./media/functions-develop-vs-code/select-author-file.png" alt-text="Screenshot to confirm trust in authors of the files.":::
131-
132122
Visual Studio Code creates a function in your chosen language and in the template for an HTTP-triggered function.
133123

134124
### Generated project files
@@ -142,6 +132,8 @@ The project template creates a project in your chosen language and installs the
142132
> [!IMPORTANT]
143133
> Because the **local.settings.json** file can contain secrets, make sure to exclude the file from your project source control.
144134
135+
* **Dockerfile** (optional): Lets you create a containerized function app from your project by using an approved base image for your project. You only get this file when you run the command `Azure Functions: Create New Containerized Project...`. You can add a Dockerfile to an existing project using the `func init --docker-only` command in [Core Tools](./functions-core-tools-reference.md#func-init).
136+
145137
Depending on your language, these other files are created:
146138

147139
::: zone pivot="programming-language-csharp"

articles/azure-functions/functions-how-to-custom-container.md

Lines changed: 61 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -63,11 +63,13 @@ For a complete example, see [Create a function app in a local container](functio
6363

6464
#### [Visual Studio Code](#tab/vs-code)
6565

66-
The Azure Functions extension for Visual Studio Code doesn't provide a way to create a Dockerfile when you create the project. However, you can instead create the Dockerfile for an existing project by using the `--docker-only` option when you run the [`func init`](./functions-core-tools-reference.md#func-init) command in the Terminal windows of an existing project folder, as in the following example:
66+
The Azure Functions extension for Visual Studio Code creates your Dockerfile when it creates your code project. To create a containerized code project:
6767

68-
```console
69-
func init --docker-only
70-
```
68+
1. In Visual Studio Code, press <kbd>F1</kbd> to open the command palette and search for and run the command `Azure Functions: Create New Containerized Project...`.
69+
70+
1. Select a folder for your new code project, choose **Select**, and follow the remaining prompts.
71+
72+
1. After your project is created, you can open and review the Dockerfile in the root folder you chose for your project.
7173

7274
#### [Visual Studio](#tab/vs)
7375

@@ -83,7 +85,7 @@ func init --docker-only
8385

8486
### Creating your function app in a container
8587

86-
With a Core Tools-generated Dockerfile in your code project, you can use Docker to create the containerized function app on your local computer. The following `docker build` command creates an image of your containerized functions from the project in the local directory:
88+
With a Functions-generated Dockerfile in your code project, you can use Docker to create the containerized function app on your local computer. The following `docker build` command creates an image of your containerized functions from the project in the local directory:
8789

8890
```console
8991
docker build --tag <DOCKER_ID>/<IMAGE_NAME>:v1.0.0 .
@@ -114,21 +116,41 @@ Replace `<DOCKER_ID>` with your Docker Hub account ID.
114116

115117
---
116118

117-
At this point, you need to update the deployment to use the new image. The following example updates the function app to use the new image:
119+
At this point, you need to update an existing deployment to use the new image. You can updates the function app to use the new image either by using the Azure CLI or in the [Azure portal]:
120+
121+
### [Azure CLI](#tab/azure-cli2)
118122

119123
```azurecli
120124
az functionapp config container set --image <IMAGE_NAME> --registry-password <SECURE_PASSWORD>--registry-username <USER_NAME> --name <APP_NAME> --resource-group <RESOURCE_GROUP>
121125
```
122126

123127
In this example, `<IMAGE_NAME>` is the full name of the new image with version. Private registries require you to supply a username and password. Store these credentials securely.
124128

129+
### [Azure portal](#tab/portal)
130+
:::zone pivot="container-apps"
131+
1. In the [Azure portal], locate your function app and select **Settings** > **Configuration** on the left-hand side.
132+
133+
1. Under **Image settings**, update the **Image tag** value to the update version in the registry, and then select **Save**.
134+
135+
The specified image version is deployed to your app.
136+
::: zone-end
137+
:::zone pivot="azure-functions"
138+
1. In the [Azure portal], locate your function app and select **Deployment** > **Deployment center** on the left-hand side.
139+
140+
1. Under **Settings**, select **Container registry** for **Source**, update the **Full Image Name and Tag** value to the update version in the registry, and then select **Save**.
141+
142+
The specified image version is deployed to your app.
143+
::: zone-end
144+
145+
---
146+
125147
:::zone pivot="azure-functions"
126148
You should also consider [enabling continuous deployment](#enable-continuous-deployment-to-azure).
127149
::: zone-end
128150
:::zone pivot="azure-functions"
129151
## Azure portal create using containers
130152

131-
When you create a function app in the [Azure portal](https://portal.azure.com), you can choose to deploy the function app from an image in a container registry. To learn how to create a containerized function app in a container registry, see [Creating your function app in a container](#creating-your-function-app-in-a-container).
153+
When you create a function app in the [Azure portal], you can choose to deploy the function app from an image in a container registry. To learn how to create a containerized function app in a container registry, see [Creating your function app in a container](#creating-your-function-app-in-a-container).
132154

133155
The following steps create and deploy an existing containerized function app from a container registry.
134156

@@ -168,7 +190,7 @@ The following steps create and deploy an existing containerized function app fro
168190
:::zone pivot="container-apps"
169191
## Azure portal create using containers
170192

171-
When you create a function app in the [Azure portal](https://portal.azure.com), you can choose to deploy the function app from an image in a container registry. To learn how to create a containerized function app in a container registry, see [Creating your function app in a container](#creating-your-function-app-in-a-container).
193+
When you create a function app in the [Azure portal], you can choose to deploy the function app from an image in a container registry. To learn how to create a containerized function app in a container registry, see [Creating your function app in a container](#creating-your-function-app-in-a-container).
172194

173195
The following steps create and deploy an existing containerized function app from a container registry.
174196

@@ -206,12 +228,38 @@ The following steps create and deploy an existing containerized function app fro
206228

207229
## Work with images in Azure Functions
208230

209-
When your function app container is deployed from a registry, Functions maintains information about the source image. Use the following commands to get data about the image or change the deployment image used:
231+
When your function app container is deployed from a registry, Functions maintains information about the source image.
232+
233+
### [Azure CLI](#tab/azure-cli2)
234+
235+
Use the following commands to get data about the image or change the deployment image used:
210236

211237
+ [`az functionapp config container show`](/cli/azure/functionapp/config/container#az-functionapp-config-container-show): returns information about the image used for deployment.
212238

213239
+ [`az functionapp config container set`](/cli/azure/functionapp/config/container#az-functionapp-config-container-set): change registry settings or update the image used for deployment, as shown in the previous example.
214240

241+
### [Azure portal](#tab/portal)
242+
:::zone pivot="container-apps"
243+
1. In the [Azure portal], locate your function app and select **Settings** > **Configuration** on the left-hand side.
244+
245+
1. Under **Image settings**, you can review information about the currently deployed image or change the deployment to a different image. You can also change the container environment allocation settings.
246+
247+
1. To make updates, modify any of the image settings, such as the **Image tag**, or container environment allocation settings and select **Save**.
248+
249+
Based on your changes, a new image is deployed to your app or new allocations are provisioned.
250+
::: zone-end
251+
:::zone pivot="azure-functions"
252+
1. In the [Azure portal], locate your function app and select **Deployment** > **Deployment center** on the left-hand side.
253+
254+
1. Under **Settings**, select **Container registry** for **Source** and you can review information about the currently deployed image.
255+
256+
1. To make updates, modify any of the image settings, such as the **Full Image Name and Tag** and then select **Save**.
257+
258+
The a new image is deployed to your app based on your new settings.
259+
::: zone-end
260+
261+
---
262+
215263
:::zone pivot="container-apps"
216264
## Container Apps workload profiles
217265

@@ -333,10 +381,13 @@ SSH enables secure communication between a container and a client. With SSH enab
333381
<!---For when we support connecting to the container console -->
334382
::: zone-end
335383
336-
## Next steps
384+
## Related articles
337385
338386
The following articles provide more information about deploying and managing containers:
339387
340388
+ [Azure Container Apps hosting of Azure Functions](./functions-container-apps-hosting.md)
341389
+ [Scale and hosting options](functions-scale.md)
342390
+ [Kubernetes-based serverless hosting](functions-kubernetes-keda.md)
391+
392+
393+
[Azure portal]: https://portal.azure.com

articles/azure-functions/functions-scale.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ title: Azure Functions scale and hosting
33
description: Compare the various options you need to consider when choosing a hosting plan in which to run your function app in Azure Functions.
44
ms.assetid: 5b63649c-ec7f-4564-b168-e0a74cb7e0f3
55
ms.topic: limits-and-quotas
6-
ms.date: 06/27/2024
6+
ms.date: 07/16/2024
77
ms.custom: H1Hack27Feb2017, devdivchpfy22, build-2023, build-2024
88
---
99
# Azure Functions hosting options
@@ -75,12 +75,12 @@ Maximum instances are given on a per-function app (Consumption) or per-plan (Pre
7575
| **[Flex Consumption plan]** | [Per-function scaling](./flex-consumption-plan.md#per-function-scaling). Event-driven scaling decisions are calculated on a per-function basis, which provides a more deterministic way of scaling the functions in your app. With the exception of HTTP, Blob storage (Event Grid), and Durable Functions, all other function trigger types in your app scale on independent instances. All HTTP triggers in your app scale together as a group on the same instances, as do all Blob storage (Event Grid) triggers. All Durable Functions triggers also share instances and scale together. | Limited only by total memory usage of all instances across a given region. For more information, see [Instance memory](flex-consumption-plan.md#instance-memory). |
7676
| **[Premium plan]** | [Event driven](event-driven-scaling.md). Scale out automatically, even during periods of high load. Azure Functions infrastructure scales CPU and memory resources by adding more instances of the Functions host, based on the number of events that its functions are triggered on. | **Windows:** 100<br/>**Linux:** 20-100<sup>2</sup>|
7777
| **[Dedicated plan]**<sup>3</sup> | Manual/autoscale |10-30<br/>100 (ASE)|
78-
| **[Container Apps]** | [Event driven](event-driven-scaling.md). Scale out automatically, even during periods of high load. Azure Functions infrastructure scales CPU and memory resources by adding more instances of the Functions host, based on the number of events that its functions are triggered on. | 10-300<sup>4</sup> |
78+
| **[Container Apps]** | [Event driven](event-driven-scaling.md). Scale out automatically, even during periods of high load. Azure Functions infrastructure scales CPU and memory resources by adding more instances of the Functions host, based on the number of events that its functions are triggered on. | 300-1000<sup>4</sup> |
7979

8080
1. During scale-out, there's currently a limit of 500 instances per subscription per hour for Linux apps on a Consumption plan. <br/>
8181
2. In some regions, Linux apps on a Premium plan can scale to 100 instances. For more information, see the [Premium plan article](functions-premium-plan.md#region-max-scale-out). <br/>
8282
3. For specific limits for the various App Service plan options, see the [App Service plan limits](../azure-resource-manager/management/azure-subscription-service-limits.md#app-service-limits).
83-
4. On Container Apps, you can set the [maximum number of replicas](../container-apps/scale-app.md#scale-definition), which is honored as long as there's enough cores quota available.
83+
4. On Container Apps, the default is 10 instances, but you can set the [maximum number of replicas](../container-apps/scale-app.md#scale-definition), which has an overall maximum of 1000. This setting is honored as long as there's enough cores quota available. When you create your function app from the Azure portal you're limited to 300 instances.
8484

8585
## Cold start behavior
8686

Binary file not shown.
Binary file not shown.
Binary file not shown.

includes/functions-networking-features.md

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -4,17 +4,17 @@ ms.service: azure-functions
44
ms.custom:
55
- build-2024
66
ms.topic: include
7-
ms.date: 06/27/2024
7+
ms.date: 07/16/2024
88
ms.author: glenga
99
---
1010

1111
| Feature |[Consumption plan](../articles/azure-functions/consumption-plan.md)|[Flex Consumption plan](../articles/azure-functions/flex-consumption-plan.md)|[Premium plan](../articles/azure-functions/functions-premium-plan.md)|[Dedicated plan](../articles/azure-functions/dedicated-plan.md)/[ASE](../articles/app-service/environment/intro.md)|[Container Apps](../articles/azure-functions/functions-container-apps-hosting.md)<sup>*</sup> |
1212
|----------------|-----------|----------------|---------|---------------| ---| --- |
13-
|[Inbound IP restrictions](../articles/azure-functions/functions-networking-options.md#inbound-networking-features)|✅Yes|✅Yes|✅Yes|✅Yes | ❌No |
13+
|[Inbound IP restrictions](../articles/azure-functions/functions-networking-options.md#inbound-networking-features)|✅Yes|✅Yes|✅Yes|✅Yes | ✅Yes |
1414
|[Inbound Private Endpoints](../articles/azure-functions/functions-networking-options.md#inbound-networking-features)|❌No|✅Yes|✅Yes|✅Yes| ❌No |
1515
|[Virtual network integration](../articles/azure-functions/functions-networking-options.md#virtual-network-integration)|❌No|✅Yes (Regional) |✅Yes (Regional)|✅Yes (Regional and Gateway)| ✅Yes|
1616
|[Virtual network triggers (non-HTTP)](../articles/azure-functions/functions-networking-options.md#virtual-network-triggers-non-http)|❌No|✅Yes | ✅Yes |✅Yes| ✅Yes|
1717
|[Hybrid connections](../articles/azure-functions/functions-networking-options.md#hybrid-connections) (Windows only)|❌No|❌ No |✅Yes|✅Yes| ❌No|
18-
|[Outbound IP restrictions](../articles/azure-functions/functions-networking-options.md#outbound-ip-restrictions)|❌No| ✅Yes | ✅Yes|✅Yes| ❌No|
18+
|[Outbound IP restrictions](../articles/azure-functions/functions-networking-options.md#outbound-ip-restrictions)|❌No| ✅Yes | ✅Yes|✅Yes| ✅Yes|
1919

2020
<sup>*</sup>For more information, see [Networking in Azure Container Apps environment](../articles/container-apps/networking.md).

0 commit comments

Comments
 (0)