Skip to content

Latest commit

 

History

History
79 lines (61 loc) · 2.74 KB

README.md

File metadata and controls

79 lines (61 loc) · 2.74 KB

DAPR Container Apps in Azure

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.

Technologies

  • 🔨 Azure PowerShell and AZ CLI for interaction with Azure
  • ⚙️ PowerShell for deployment script
  • 💪 Bicep for Infrastructure as Code

Overview

diagram (diagram by Microsoft - CC BY 4.0)

Usage

Prerequisites

  1. Install/update Azure PowerShell
  2. Install/update Azure CLI
    • containerapp extension: az extension add --name containerapp --upgrade
    • bicep: az bicep install
  3. Connect to Azure: Connect-AzAccount
  4. Set Context: Set-AzContext -SubscriptionName <subscription name>
  5. Register resource provider: Register-AzResourceProvider -ProviderNamespace Microsoft.App

Deploy

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"
  }
]