Learning Azure Container Apps based on this guide from Microsoft
This repo contains code to deploy the DAPR hello-world application on Azure Container Apps with DAPR using Azure Storage Account for storing state.
- 🔨 Azure PowerShell and AZ CLI for interaction with Azure
- ⚙️ PowerShell for deployment script
- 💪 Bicep for Infrastructure as Code
(diagram by Microsoft - CC BY 4.0)
- Install/update Azure PowerShell
- Install/update Azure CLI
- containerapp extension:
az extension add --name containerapp --upgrade
- bicep:
az bicep install
- containerapp extension:
- Connect to Azure:
Connect-AzAccount
- Set Context:
Set-AzContext -SubscriptionName <subscription name>
- Register resource provider:
Register-AzResourceProvider -ProviderNamespace Microsoft.App
Open PowerShell and run deploy.ps1 to deploy the resources:
./deploy.ps1
# Example output
🚀 Deploying container apps...(this will take a few minutes)
✔️ Deploy succeeded! API url:
https://nodeapp.<unique name>.canadacentral.azurecontainerapps.io/order
⌛ Waiting for a minute before querying api and logs...
🔎 Querying /order API...
{
"orderId": 99
}
🗒️ Querying logs from Log Analytics Workspace. Listing 5 latest entries...
[
{
"ContainerAppName_s": "nodeapp",
"Log_s": "Got a new order! Order ID: 83",
"TimeGenerated": "2022-05-20T21:36:37.839Z"
},
{
"ContainerAppName_s": "nodeapp",
"Log_s": "Got a new order! Order ID: 84",
"TimeGenerated": "2022-05-20T21:36:37.839Z"
},
{
"ContainerAppName_s": "nodeapp",
"Log_s": "Got a new order! Order ID: 85",
"TimeGenerated": "2022-05-20T21:36:39.674Z"
},
{
"ContainerAppName_s": "nodeapp",
"Log_s": "Got a new order! Order ID: 60",
"TimeGenerated": "2022-05-20T21:36:13.533Z"
},
{
"ContainerAppName_s": "nodeapp",
"Log_s": "Got a new order! Order ID: 64",
"TimeGenerated": "2022-05-20T21:36:17.643Z"
}
]