This guide will get your SKB Visualization application deployed to Azure Container Apps in minutes using our automated setup script.
- Azure CLI - Install Azure CLI
- GitHub CLI - Install GitHub CLI
- PowerShell 7+ (recommended) or Windows PowerShell 5.1
# Login to Azure
az login
# Login to GitHub
gh auth loginExecute the PowerShell setup script with your specific values:
# Navigate to your repository root
cd path\to\your\Wireframe
# Run the setup script with your parameters
.\scripts\azure-setup.ps1 `
-SubscriptionId "your-subscription-id" `
-ResourceGroup "your-resource-group-name" `
-AcrName "your-acr-name" `
-GitHubRepo "your-github-username/Wireframe"
# Example with actual values:
# .\scripts\azure-setup.ps1 `
# -SubscriptionId "12345678-1234-1234-1234-123456789012" `
# -ResourceGroup "my-resource-group" `
# -AcrName "myacr" `
# -GitHubRepo "jsmith/Wireframe"# With additional optional parameters
.\scripts\azure-setup.ps1 `
-SubscriptionId "your-subscription-id" `
-ResourceGroup "your-resource-group-name" `
-AcrName "your-acr-name" `
-GitHubRepo "your-github-username/Wireframe" `
-Location "West US 2" `
-AppName "my-skb-app" `
-ContainerEnvName "my-container-env" `
-EnableLogging:$trueAfter the script completes, verify the configuration:
# Check GitHub secrets
gh secret list --repo your-username/Wireframe
# Check Azure resources
az containerapp list --resource-group your-resource-group-name --output tableTrigger the deployment workflow:
# Trigger deployment manually
gh workflow run "Deploy to Azure Container Apps" --repo your-username/Wireframe
# Monitor the deployment
gh run list --repo your-username/Wireframe --limit 5Or simply push code to the main branch to trigger automatic deployment.
The automated setup script performs these actions:
- ✅ Creates Container Apps Environment - Sets up the Azure Container Apps environment
- ✅ Creates OIDC App Registration - Sets up Azure AD app with federated credentials
- ✅ Configures Permissions - Assigns necessary roles (AcrPush, Container Apps Contributor)
- ✅ Creates Container App - Initial container app with placeholder image
- ✅ Sets Up Logging - Creates Log Analytics workspace for monitoring
- ✅ Configures GitHub Secrets - Automatically sets all required repository secrets
The script automatically configures these GitHub repository secrets:
AZURE_CLIENT_ID- Service principal client IDAZURE_TENANT_ID- Azure tenant IDAZURE_SUBSCRIPTION_ID- Your Azure subscription IDAZURE_RESOURCE_GROUP- Resource group nameACR_NAME- Container registry nameCONTAINER_APP_NAME- Container app nameCONTAINER_APP_ENVIRONMENT- Container environment name
Permission denied errors:
# Ensure you're logged into Azure with sufficient permissions
az account show
az account list-locations # Test Azure CLI accessGitHub CLI authentication issues:
# Re-authenticate with GitHub
gh auth logout
gh auth loginScript execution policy errors:
# Allow script execution (run as Administrator)
Set-ExecutionPolicy -ExecutionPolicy RemoteSigned -Scope CurrentUser# Check Container Apps
az containerapp list --resource-group your-rg --output table
# Check App Registration
az ad app list --display-name "skb-visualization-github-oidc"
# Check Role Assignments
az role assignment list --assignee your-app-id --output tableOnce deployment is complete:
- Visit your application - The script outputs the Container App URL
- Monitor logs - Use Azure Portal or CLI to view application logs
- Set up custom domain - Configure your own domain name (optional)
- Configure scaling - Adjust min/max replicas based on usage
If you prefer manual setup, see the detailed guide: Azure Deployment Setup Guide
- GitHub Issues: Create an issue in this repository
- Azure Documentation: Azure Container Apps Documentation
- GitHub Actions: GitHub Actions Documentation