Skip to content

Commit 36716c2

Browse files
Add Python-specific Codespaces instructions
1 parent 784274f commit 36716c2

File tree

2 files changed

+11
-6
lines changed

2 files changed

+11
-6
lines changed

README.md

Lines changed: 11 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,13 @@
11
# Azure API Management Samples
22

3+
[![Open Source Love](https://firstcontributions.github.io/open-source-badges/badges/open-source-v1/open-source.svg)](https://github.com/firstcontributions/open-source-badges)
34
[![OpenSSF Best Practices](https://www.bestpractices.dev/projects/11057/badge)](https://www.bestpractices.dev/projects/11057)
45
[![Python Tests][badge-python-tests]][workflow-python-tests]
56

67
This repository provides a playground to safely experiment with and learn Azure API Management (APIM) policies in various architectures.
78

89
_If you are interested in APIM & Azure OpenAI integrations, please check out the excellent [AI Gateway][ai-gateway] GitHub repository._
10+
_For much more API Management content, please also check out [APIM Love][apim-love]._
911

1012
## 🎯 Objectives
1113

@@ -21,10 +23,10 @@ _Try it out, learn from it, apply it in your setups._
2123

2224
| Infrastructure Name | Description |
2325
|:-------------------------------------------------------------------|:----------------------------------------------------------------------------------------------------------------------------------------------------------------------|
24-
| [Simple API Management][infra-simple-apim] | Just the basics with a publicly accessible API Management instance fronting your APIs. This is the innermost way to experience and experiment with the APIM policies. |
25-
| [API Management & Container Apps][infra-apim-aca] | APIs are often implemented in containers running in Azure Container Apps. This architecture accesses the container apps publicly. It's beneficial to test both APIM and container app URLs to contrast and compare experiences of API calls through and bypassing APIM. It is not intended to be a security baseline. |
26-
| [Front Door & API Management & Container Apps][infra-afd-apim-pe] | A secure implementation of Azure Front Door connecting to APIM via the new private link integration. This traffic, once it traverses through Front Door, rides entirely on Microsoft-owned and operated networks. The connection from APIM to Container Apps is secured but through a VNet configuration (it is also entirely possible to do this via private link). APIM Standard V2 is used here to accept a private link from Front Door. |
27-
| [Application Gateway (Private Endpoint) & API Management & Container Apps][infra-appgw-apim-pe] | A secure implementation of Azure Application Gateway connecting to APIM via the new private link integration. This traffic, once it traverses through App Gateway, uses a private endpoint set up in the VNet's private endpoint subnet. The connection from APIM to Container Apps is secured but through a VNet configuration (it is also entirely possible to do this via private link). APIM Standard V2 is used here to accept a private link from App Gateway. |
26+
| [Simple API Management][infra-simple-apim] | **Just the basics with a publicly accessible API Management instance** fronting your APIs. This is the innermost way to experience and experiment with the APIM policies. |
27+
| [API Management & Container Apps][infra-apim-aca] | APIs are often implemented in containers running in **Azure Container Apps**. This architecture accesses the container apps publicly. It's beneficial to test both APIM and container app URLs to contrast and compare experiences of API calls through and bypassing APIM. It is not intended to be a security baseline. |
28+
| [Front Door & API Management & Container Apps][infra-afd-apim-pe] | **A secure implementation of Azure Front Door connecting to APIM via the new private link integration!** This traffic, once it traverses through Front Door, rides entirely on Microsoft-owned and operated networks. The connection from APIM to Container Apps is secured but through a VNet configuration (it is also entirely possible to do this via private link). **APIM Standard V2** is used here to accept a private link from Front Door. |
29+
| [Application Gateway (Private Endpoint) & API Management & Container Apps][infra-appgw-apim-pe] | **A secure implementation of Azure Application Gateway connecting to APIM via the new private link integration!** This traffic, once it traverses through App Gateway, uses a private endpoint set up in the VNet's private endpoint subnet. The connection from APIM to Container Apps is secured but through a VNet configuration (it is also entirely possible to do this via private link). APIM Standard V2 is used here to accept a private link from App Gateway. |
2830
| [Application Gateway (VNet) & API Management & Container Apps][infra-appgw-apim] | Full VNet injection of APIM and ACA! APIM is shielded from any type of traffic unless it comes through App Gateway. This offers maximum isolation for instances in which customers seek VNet injection. |
2931

3032
## 📁 List of Samples
@@ -47,9 +49,11 @@ _Try it out, learn from it, apply it in your setups._
4749

4850
#### Option 1: GitHub Codespaces / Dev Container (Recommended)
4951

50-
The fastest way to get started is using our pre-configured development environment:
52+
The fastest way to get started is using our pre-configured development environment. Each supported Python version has its own dev container,
53+
providing you with a more tailored environment that hopefully more closely resembles your own workloads.
5154

52-
- **GitHub Codespaces**: Click the green "Code" button → "Codespaces" → "Create codespace on main"
55+
- **GitHub Codespaces**: Click the green "Code" button → "Codespaces" → "..." → "New with options..." → "Dev container configuration" (select Python version but ignore *Default project configuration*) → "Create codespace"
56+
<img src="./assets/codespaces-python-configurations.png" alt="Codespaces configuration selector for various supposed Python versions" title="Codespaces configuration selector" />
5357
- **VS Code Dev Containers**: Install the [Dev Containers extension][vscode-devcontainers], then "Reopen in Container"
5458

5559
All prerequisites are automatically installed and configured.
@@ -478,6 +482,7 @@ The original author of this project is [Simon Kurtz][simon-kurtz].
478482
[ai-gateway-private-connectivity]: https://github.com/Azure-Samples/AI-Gateway/tree/main/labs/private-connectivity
479483
[alex-vieira]: https://github.com/vieiraae
480484
[andrew-redman]: https://github.com/anotherRedbeard
485+
[apim-love]: https://aka.ms/apimlove
481486
[apim-lza]: https://learn.microsoft.com/azure/cloud-adoption-framework/scenarios/app-platform/api-management/landing-zone-accelerator
482487
[apim-snippets-repo]: https://github.com/Azure/api-management-policy-snippets
483488
[azure-bicep-install]: https://learn.microsoft.com/azure/azure-resource-manager/bicep/install#azure-cli
50.9 KB
Loading

0 commit comments

Comments
 (0)