Skip to content

Commit dd1a4c4

Browse files
Merge branch 'main' of https://github.com/MicrosoftDocs/azure-docs-pr into oauthnew
2 parents ccd5979 + e68719b commit dd1a4c4

File tree

515 files changed

+10539
-6112
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

515 files changed

+10539
-6112
lines changed

.openpublishing.redirection.json

Lines changed: 27 additions & 27 deletions
Original file line numberDiff line numberDiff line change
@@ -227,7 +227,7 @@
227227
},
228228
{
229229
"source_path": "articles/databox-online/azure-stack-edge-2301-release-notes.md",
230-
"redirect_url": "/previous-versions/azure/databox-online/azure-stack-edge-2301-release-notes",
230+
"redirect_url": "/previous-versions/azure/databox-online/azure-stack-edge-2301-release-notes"
231231
},
232232
{
233233
"source_path": "articles/network-watcher/nsg-flow-logs-rest.md",
@@ -2393,7 +2393,7 @@
23932393
"source_path_from_root": "/articles/app-service/manage-disaster-recovery.md",
23942394
"redirect_url": "/azure/architecture/web-apps/guides/multi-region-app-service/multi-region-app-service",
23952395
"redirect_document_id": false
2396-
},
2396+
},
23972397
{
23982398
"source_path_from_root": "/articles/public-multi-access-edge-compute-mec/tutorial-create-vm-using-python-sdk.md",
23992399
"redirect_url": "/previous-versions/azure/public-multi-access-edge-compute-mec/tutorial-create-vm-using-python-sdk",
@@ -6875,49 +6875,49 @@
68756875
"redirect_document_id": false
68766876
},
68776877
{
6878-
"source_path": "articles/storage/files/storage-files-enable-soft-delete.md",
6878+
"source_path": "articles/storage/files/storage-files-enable-soft-delete.md",
68796879
"redirect_url": "/azure/storage/files/storage-files-prevent-file-share-deletion",
68806880
"redirect_document_id": false
6881-
},
6882-
{
6881+
},
6882+
{
68836883
"source_path": "articles/defender-for-iot/organizations/release-notes-archive.md",
68846884
"redirect_url": "/azure/defender-for-iot/organizations/release-notes-ot-monitoring-sensor-archive",
6885-
"redirect_document_id": false
6886-
},
6887-
{
6885+
"redirect_document_id": false
6886+
},
6887+
{
68886888
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-portal.md",
68896889
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6890-
"redirect_document_id": false
6891-
},
6892-
{
6890+
"redirect_document_id": false
6891+
},
6892+
{
68936893
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-powershell.md",
68946894
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6895-
"redirect_document_id": false
6896-
},
6897-
{
6895+
"redirect_document_id": false
6896+
},
6897+
{
68986898
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-cli.md",
68996899
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6900-
"redirect_document_id": false
6901-
},
6902-
{
6900+
"redirect_document_id": false
6901+
},
6902+
{
69036903
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-template.md",
69046904
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6905-
"redirect_document_id": false
6906-
},
6907-
{
6905+
"redirect_document_id": false
6906+
},
6907+
{
69086908
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-terraform.md",
69096909
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6910-
"redirect_document_id": false
6911-
},
6912-
{
6910+
"redirect_document_id": false
6911+
},
6912+
{
69136913
"source_path": "articles/nat-gateway/quickstart-create-nat-gateway-bicep.md",
69146914
"redirect_url": "/azure/nat-gateway/quickstart-create-nat-gateway",
6915-
"redirect_document_id": false
6916-
},
6917-
{
6915+
"redirect_document_id": false
6916+
},
6917+
{
69186918
"source_path": "articles/defender-for-iot/organizations/eiot-sensor.md",
69196919
"redirect_url": "/azure/defender-for-iot/organizations/concept-enterprise",
69206920
"redirect_document_id": false
69216921
}
69226922
]
6923-
}
6923+
}

articles/api-management/integrate-vnet-outbound.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -48,7 +48,7 @@ If you want to inject a Premium v2 (preview) API Management instance into a virt
4848

4949
### Network security group
5050

51-
A network security group must be associated with the subnet. Configure any network security group rules that you need for the gateway to access your API backends. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
51+
A network security group must be associated with the subnet. Configure any network security group rules that you need for the gateway to access your API backends. Network security groups (NSG) can also be used to block outbound traffic to the internet and access only resources in your virtual network. To set up a network security group, see [Create a network security group](../virtual-network/manage-network-security-group.md).
5252

5353
### Subnet delegation
5454

articles/app-service/deploy-authentication-types.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -22,7 +22,7 @@ With Azure App Service, you have multiple options for deploying your web applica
2222
| SCM/Kudu/OneDeploy REST endpoint | Basic authentication<br/><br/>Microsoft Entra | [Deploy files to App Service](deploy-zip.md) |
2323
| Kudu UI | Basic authentication<br/><br/>Microsoft Entra | [Deploy files to App Service](deploy-zip.md) |
2424
| FTP/FTPS | Basic authentication | [Deploy your app to Azure App Service by using FTP/S](deploy-ftp.md) |
25-
| Visual Studio | Basic authentication  | [Quickstart: Deploy an ASP.NET web app](quickstart-dotnetcore.md)<br/><br/>[Develop and deploy WebJobs by using Visual Studio](webjobs-dotnet-deploy-vs.md)<br/><br/>[Troubleshoot an app in Azure App Service by using Visual Studio](troubleshoot-dotnet-visual-studio.md)<br/><br/>[GitHub Actions integration in Visual Studio](/visualstudio/azure/overview-github-actions)<br/><br/>[Deploy your application to Azure by using GitHub Actions workflows created by Visual Studio](/visualstudio/deployment/azure-deployment-using-github-actions) |
25+
| Visual Studio | Basic authentication<br/><br/>Microsoft Entra  | [Quickstart: Deploy an ASP.NET web app](quickstart-dotnetcore.md)<br/><br/>[Develop and deploy WebJobs by using Visual Studio](webjobs-dotnet-deploy-vs.md)<br/><br/>[Troubleshoot an app in Azure App Service by using Visual Studio](troubleshoot-dotnet-visual-studio.md)<br/><br/>[GitHub Actions integration in Visual Studio](/visualstudio/azure/overview-github-actions)<br/><br/>[Deploy your application to Azure by using GitHub Actions workflows created by Visual Studio](/visualstudio/deployment/azure-deployment-using-github-actions) |
2626
| Visual Studio Code | Microsoft Entra | [Quickstart: Deploy an ASP.NET web app](quickstart-dotnetcore.md)<br/><br/>[Working with GitHub in VS Code](https://code.visualstudio.com/docs/sourcecontrol/github) |
2727
| GitHub with GitHub Actions | Publish profile (basic authentication)<br/><br/>Service principal (Microsoft Entra)<br/><br/>OpenID Connect (Microsoft Entra) | [Deploy to App Service by using GitHub Actions](deploy-github-actions.md) |
2828
| GitHub with the App Service build service as a build engine | Basic authentication | [Continuous deployment to Azure App Service](deploy-continuous-deployment.md) |
Lines changed: 15 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,15 @@
1+
---
2+
author: cephalin
3+
ms.service: azure-app-service
4+
ms.topic: include
5+
ms.date: 05/07/2025
6+
ms.author: cephalin
7+
---
8+
9+
Hosting your own small language model (SLM) offers several advantages:
10+
11+
- Full control over your data. Sensitive information isn't exposed to external services, which is critical for industries with strict compliance requirements.
12+
- Self-hosted models can be fine-tuned to meet specific use cases or domain-specific requirements.
13+
- Minimized network latency and faster response times for a better user experience.
14+
- Full control over resource allocation, ensuring optimal performance for your application.
15+
Lines changed: 56 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,56 @@
1+
---
2+
author: cephalin
3+
ms.service: azure-app-service
4+
ms.topic: include
5+
ms.date: 05/07/2025
6+
ms.author: cephalin
7+
---
8+
9+
## Frequently asked questions
10+
11+
### How does pricing tier affect the performance of the SLM sidecar?
12+
13+
Since AI models consume considerable resources, choose the pricing tier that gives you sufficient vCPUs and memory to run your specific model. For this reason, the built-in AI sidecar extensions only appear when the app is in a suitable pricing tier. If you build your own SLM sidecar container, you should also use a CPU-optimized model, since the App Service pricing tiers are CPU-only tiers.
14+
15+
For example, the [Phi-3 mini model with a 4K context length from Hugging Face](https://huggingface.co/microsoft/Phi-3-mini-4k-instruct-onnx) is designed to run with limited resources and provides strong math and logical reasoning for many common scenarios. It also comes with a CPU-optimized version. In App Service, we tested the model on all premium tiers and found it to perform well in the [P2mv3](https://azure.microsoft.com/pricing/details/app-service/linux/) tier or higher. If your requirements allow, you can run it on a lower tier.
16+
17+
### How to use my own SLM sidecar?
18+
19+
The sample repository contains a sample SLM container that you can use as a sidecar. It runs a FastAPI application that listens on port 8000, as specified in its [Dockerfile](https://github.com/Azure-Samples/ai-slm-in-app-service-sidecar/blob/main/bring_your_own_slm/src/phi-3-sidecar/Dockerfile). The application uses [ONNX Runtime](https://onnxruntime.ai/docs/) to load the Phi-3 model, then forwards the HTTP POST data to the model and streams the response from the model back to the client. For more information, see [model_api.py](https://github.com/Azure-Samples/ai-slm-in-app-service-sidecar/blob/main/src/phi-3-sidecar/model_api.py).
20+
21+
To build the sidecar image yourself, you need to install Docker Desktop locally on your machine.
22+
23+
1. Clone the repository locally.
24+
25+
```bash
26+
git clone https://github.com/Azure-Samples/ai-slm-in-app-service-sidecar
27+
cd ai-slm-in-app-service-sidecar
28+
```
29+
30+
1. Change into the Phi-3 image's source directory and download the model locally using the [Huggingface CLI](https://huggingface.co/docs/huggingface_hub/guides/cli).
31+
32+
```bash
33+
cd bring_your_own_slm/src/phi-3-sidecar
34+
huggingface-cli download microsoft/Phi-3-mini-4k-instruct-onnx --local-dir ./Phi-3-mini-4k-instruct-onnx
35+
```
36+
37+
The [Dockerfile](https://github.com/Azure-Samples/ai-slm-in-app-service-sidecar/blob/main/src/phi-3-sidecar/Dockerfile) is configured to copy the model from *./Phi-3-mini-4k-instruct-onnx*.
38+
39+
1. Build the Docker image. For example:
40+
41+
```bash
42+
docker build --tag phi-3 .
43+
```
44+
45+
1. Upload the built image to Azure Container Registry with [Push your first image to your Azure container registry using the Docker CLI](/azure/container-registry/container-registry-get-started-docker-cli).
46+
47+
1. In the **Deployment Center** > **Containers (new)** tab, select **Add** > **Custom container** and configure the new container as follows:
48+
- **Name**: *phi-3*
49+
- **Image source**: **Azure Container Registry**
50+
- **Registry**: your registry
51+
- **Image**: the uploaded image
52+
- **Tag**: the image tag you want
53+
- **Port**: *8000*
54+
1. Select **Apply**.
55+
56+
See [bring_your_own_slm/src/webapp](https://github.com/Azure-Samples/ai-slm-in-app-service-sidecar/blob/main/bring_your_own_slm/src/webapp) for a sample application that interacts with this custom sidecar container.
Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
---
2+
author: cephalin
3+
ms.service: azure-app-service
4+
ms.topic: include
5+
ms.date: 05/07/2025
6+
ms.author: cephalin
7+
---
8+
9+
## Add the Phi-3 sidecar extension
10+
11+
In this section, you add the Phi-3 sidecar extension to your ASP.NET Core application hosted on Azure App Service.
12+
13+
1. Navigate to the Azure portal and go to your app's management page.
14+
2. In the left-hand menu, select **Deployment** > **Deployment Center**.
15+
3. On the **Containers** tab, select **Add** > **Sidecar extension**.
16+
4. In the sidecar extension options, select **AI: phi-3-mini-4k-instruct-q4-gguf (Experimental)**.
17+
5. Provide a name for the sidecar extension.
18+
6. Select **Save** to apply the changes.
19+
7. Wait a few minutes for the sidecar extension to deploy. Keep selecting **Refresh** until the **Status** column shows **Running**.
20+
21+
This Phi-3 sidecar extension uses a [chat completion API like OpenAI](https://platform.openai.com/docs/api-reference/chat/create) that can respond to chat completion response at `http://localhost:11434/v1/chat/completions`. For more information on how to interact with the API, see:
22+
23+
- [OpenAI documentation: Create chat completion](https://platform.openai.com/docs/api-reference/chat/create)
24+
- [OpenAI documentation: Streaming](https://platform.openai.com/docs/api-reference/chat-streaming)
25+
26+
## Test the chatbot
27+
28+
1. In your app's management page, in the left-hand menu, select **Overview**.
29+
1. Under **Default domain**, select the URL to open your web app in a browser.
30+
1. Verify that the chatbot application is running and responding to user inputs.
31+
32+
:::image type="content" source="../../media/tutorial-ai-slm-dotnet/fashion-store-assistant-live.png" alt-text="Screenshot showing the fashion assistant app running in the browser.":::
33+
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
author: cephalin
3+
ms.service: azure-app-service
4+
ms.topic: include
5+
ms.date: 05/08/2025
6+
ms.author: cephalin
7+
---
8+
9+
### How do sidecar containers handle internal communication?
10+
11+
Sidecar containers share the same network host as the main container, so the main container (and other sidecar containers) can reach any port on the sidecar with `localhost:<port>`. The example *startup.sh* uses `localhost:4318` to access port 4318 on the **otel-collector** sidecar.
12+
13+
In the **Edit container** dialog, the **Port** box isn't currently used by App Service. You can use it as part of the sidecar metadata, such as to indicate which port the sidecar is listening to.
14+
15+
### Can a sidecar container receive internet requests?
16+
17+
No. App Service routes internet requests only to the main container. For code-based Linux apps, the built-in Linux container is the main container, and any sidecar container ([sitecontainers](/azure/templates/microsoft.web/sites/sitecontainers)) should be added with `IsMain=false`. For custom containers, all but one of the [sitecontainers](/azure/templates/microsoft.web/sites/sitecontainers) should have `IsMain=false`.
18+
19+
For more information on configuring `IsMain`, see [Microsoft.Web sites/sitecontainers](/azure/templates/microsoft.web/sites/sitecontainers).
20+
Lines changed: 13 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,13 @@
1+
---
2+
author: cephalin
3+
ms.service: azure-app-service
4+
ms.topic: include
5+
ms.date: 05/08/2025
6+
ms.author: cephalin
7+
---
8+
9+
## What's a sidecar container?
10+
11+
In Azure App Service, you can add up to nine sidecar containers for each Linux app. Sidecar containers let you deploy extra services and features to your Linux apps without making them tightly coupled to the main container (built-in or custom). For example, you can add monitoring, logging, configuration, and networking services as sidecar containers. An OpenTelemetry collector sidecar is one such monitoring example.
12+
13+
The sidecar containers run alongside the main application container in the same App Service plan.
97.7 KB
Loading

articles/app-service/overview-diagnostics.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -15,7 +15,7 @@ This article explains how to troubleshoot issues with your app in Azure App Serv
1515

1616
Azure App Service diagnostics is an interactive experience to help you troubleshoot your app with no configuration required. App Service diagnostics points out what's wrong and guides you to the right information to more easily and quickly troubleshoot and resolve the problem.
1717

18-
Although this experience is most helpful for problems that occured within the last 24 hours, all the diagnostic graphs are always available for you to analyze.
18+
Although this experience is most helpful for problems that occurred within the last 24 hours, all the diagnostic graphs are always available for you to analyze.
1919

2020
App Service diagnostics works for not only apps on Windows, but also for apps on built-in or custom containers, [App Service Environments](./environment/intro.md), and [Azure Functions](../azure-functions/functions-overview.md).
2121

0 commit comments

Comments
 (0)