Agent Skills

azure-container-apps

Expert knowledge for Azure Container Apps development including troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. Use when configuring ACA auth/egress, KEDA/Dapr scaling, CI/CD deployments, Java microservices, or quotas, and other Azure Container Apps related development tasks. Not for Azure App Service (use azure-app-service), Azure Functions (use azure-functions), Azure Kub

Install

npx skills add https://github.com/microsoftdocs/agent-skills --skill azure-container-apps
SKILL.md

Azure Container Apps Skill

This skill provides expert guidance for Azure Container Apps. Covers troubleshooting, best practices, decision making, architecture & design patterns, limits & quotas, security, configuration, integrations & coding patterns, and deployment. It combines local quick-reference content with remote documentation fetching capabilities.

How to Use This Skill

IMPORTANT for Agent: Use the Category Index below to locate relevant sections. For categories with line ranges (e.g., L35-L120), use read_file with the specified lines. For categories with file links (e.g., [security.md](security.md)), use read_file on the linked reference file

IMPORTANT for Agent: If metadata.generated_at is more than 3 months old, suggest the user pull the latest version from the repository. If mcp_microsoftdocs tools are not available, suggest the user install it: Installation Guide

This skill requires network access to fetch documentation content:

  • Preferred: Use mcp_microsoftdocs:microsoft_docs_fetch with query string from=learn-agent-skill. Returns Markdown.
  • Fallback: Use fetch_webpage with query string from=learn-agent-skill&accept=text/markdown. Returns Markdown.

Category Index

Category Lines Description
Troubleshooting L37-L53 Diagnosing and fixing Container Apps issues: deploy/start/image pull failures, health probes, ports, storage mounts, runtime/OCI errors, Arc dependencies, debug console, and Java log-level tuning.
Best Practices L54-L60 Deployment, cold-start, and runtime tuning guidance: blue-green rollouts, reducing scale-out latency, and optimizing Java memory usage in Azure Container Apps.
Decision Making L61-L81 Guidance for choosing Container Apps plans, capacity, GPUs, and cost models, plus migration and modernization paths from Functions, Heroku, Java/Spring/Tomcat, and other Azure container hosting options.
Architecture & Design Patterns L82-L87 Architectures and patterns for Java microservices on Azure Container Apps, including Eureka HA clusters, AI-enabled PetClinic, and end-to-end microservice design best practices.
Limits & Quotas L88-L94 Quota types, default and max limits, scaling and behavior constraints, and how to review, request, and increase Azure Container Apps quotas.
Security L95-L133 Securing Container Apps: auth (Entra, social, OIDC, mTLS), secrets and certs, private networking, egress control, RBAC/Policy, and best practices for protecting apps and Functions.
Configuration L134-L171 Configuring Container Apps runtime: networking, ingress, revisions, scaling (KEDA/Dapr/Functions), workload profiles, storage mounts, Java features, and ARM/YAML/Bicep-based setup.
Integrations & Coding Patterns L172-L196 Patterns for connecting Container Apps to each other and external services (Dapr, Spring, Front Door, Private Link) plus OpenTelemetry exports and code-interpreter/dynamic session integrations.
Deployment L197-L204 Deploying and automating Container Apps: CI/CD with GitHub Actions/Azure Pipelines, Docker Compose deployments, Arc-enabled Kubernetes, logging migration, and self-hosted runners/jobs.

Troubleshooting

Topic URL
Troubleshoot Azure Arc Container Apps dependencies and runtime https://learn.microsoft.com/en-us/azure/container-apps/azure-arc-troubleshoot
Use Container Apps debug console for in-place troubleshooting https://learn.microsoft.com/en-us/azure/container-apps/container-debug-console
Use dynamic log levels to troubleshoot Java apps on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-dynamic-log-level
Troubleshoot MCP server issues on Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/mcp-troubleshooting
Diagnose container exit failures in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-container-create-failures
Troubleshoot container start failures in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-container-start-failures
Troubleshoot Azure Container Apps deployment failures https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-deployment-errors
Troubleshoot health probe failures in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-health-probe-failures
Diagnose and fix image pull failures in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-image-pull-failures
Resolve OCI runtime errors in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-open-container-initiative-errors
Fix storage mount failures in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-storage-mount-failures
Resolve target port misconfiguration in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshoot-target-port-settings
Diagnose and fix issues in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/troubleshooting

Best Practices

Topic URL
Implement blue-green deployments in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/blue-green-deployment
Apply cold-start reduction best practices in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/cold-start
Optimize Java memory usage in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-memory-fit

Decision Making

Topic URL
Plan Azure Arc Container Apps cluster capacity and design https://learn.microsoft.com/en-us/azure/container-apps/azure-arc-plan
Understand billing and cost calculation for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/billing
Select code-to-cloud deployment options for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/code-to-cloud-options
Select between Azure container hosting options https://learn.microsoft.com/en-us/azure/container-apps/compare-options
Plan and organize Azure Container Apps environments https://learn.microsoft.com/en-us/azure/container-apps/environment
Evaluate legacy Consumption-only Container Apps environments https://learn.microsoft.com/en-us/azure/container-apps/environment-type-consumption-only
Select appropriate GPU type for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/gpu-types
Select Azure hosting service for MCP servers https://learn.microsoft.com/en-us/azure/container-apps/mcp-choosing-azure-service
Migrate from Functions v1 to v2 on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/migrate-functions
Plan migration from Heroku to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/migrate-heroku-overview
Modernize Java apps to Azure Container Apps with GitHub Copilot https://learn.microsoft.com/en-us/azure/container-apps/migrate-java-github-copilot-app-modernization
Assess and migrate Spring Boot apps to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/migrate-spring-boot
Plan migration of Spring Cloud apps to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/migrate-spring-cloud
Migrate existing Tomcat applications to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/migrate-tomcat
Compare Azure Container Apps plan types https://learn.microsoft.com/en-us/azure/container-apps/plans
Choose Container Apps compute and billing structures https://learn.microsoft.com/en-us/azure/container-apps/structure
Choose and configure Azure Container Apps workload profiles https://learn.microsoft.com/en-us/azure/container-apps/workload-profiles-overview

Architecture & Design Patterns

Topic URL
Design a highly available Eureka cluster on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-eureka-server-highly-available
Design microservices architecture on Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/microservices

Limits & Quotas

Topic URL
Azure Container Apps limits and behavioral FAQs https://learn.microsoft.com/en-us/azure/container-apps/faq
Request and adjust Azure Container Apps quotas https://learn.microsoft.com/en-us/azure/container-apps/quota-requests
Review Azure Container Apps quotas and limits https://learn.microsoft.com/en-us/azure/container-apps/quotas

Security

Topic URL
Use built-in authentication and authorization in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication
Configure Microsoft Entra authentication for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-entra
Enable Facebook authentication in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-facebook
Configure GitHub authentication for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-github
Configure Google authentication for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-google
Configure custom OpenID Connect auth for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-openid
Configure X (Twitter) authentication for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/authentication-twitter
Set up client certificate (mTLS) auth for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/client-certificate-authorization
Configure CORS for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/cors
Manage custom domains and TLS certificates in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/custom-domains-certificates
Configure custom domains and managed certificates for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/custom-domains-managed-certificates
Use Dapr APP_API_TOKEN for Container Apps requests https://learn.microsoft.com/en-us/azure/container-apps/dapr-authentication-token
Secure Dapr component connections to Azure services https://learn.microsoft.com/en-us/azure/container-apps/dapr-component-connect-services
Configure custom environment DNS suffix and TLS in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/environment-custom-dns-suffix
Harden Container Apps VNets with NSG and UDR rules https://learn.microsoft.com/en-us/azure/container-apps/firewall-integration
Store app-level secrets for Functions on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/functions-secrets-app-level
Configure Functions host key storage on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/functions-secrets-host-keys
Manage app and access secrets for Functions on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/functions-secrets-tutorial
Secure Container Apps with private endpoints https://learn.microsoft.com/en-us/azure/container-apps/how-to-use-private-endpoint
Configure IP ingress restrictions for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/ip-restrictions
Import and manage Container Apps certificates from Key Vault https://learn.microsoft.com/en-us/azure/container-apps/key-vault-certificates-manage
Manage secrets securely in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/manage-secrets
Use managed identities with Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/managed-identity
Configure ACR image pulls via managed identity https://learn.microsoft.com/en-us/azure/container-apps/managed-identity-image-pull
Secure MCP servers on Azure Container Apps with Entra ID https://learn.microsoft.com/en-us/azure/container-apps/mcp-authentication
Enable and use mTLS with Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/mtls
Use built-in Azure Policy definitions for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/policy-reference
Configure egress policies for Container Apps Sandboxes https://learn.microsoft.com/en-us/azure/container-apps/sandboxes-egress-policies
Assign required RBAC role for Container Apps Sandboxes https://learn.microsoft.com/en-us/azure/container-apps/sandboxes-get-started
Manage Azure Container Apps SandboxGroup permissions https://learn.microsoft.com/en-us/azure/container-apps/sandboxes-overview
Apply security best practices to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/secure-deployment
Configure token store-backed auth for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/token-store
Secure Container Apps egress via Azure Firewall https://learn.microsoft.com/en-us/azure/container-apps/use-azure-firewall
Control Container Apps outbound traffic via Azure Firewall https://learn.microsoft.com/en-us/azure/container-apps/user-defined-routes
Protect Container Apps with Application Gateway WAF https://learn.microsoft.com/en-us/azure/container-apps/waf-app-gateway

Configuration

Topic URL
Reference ARM and YAML schema for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/azure-resource-manager-api-spec
Enable and verify confidential compute for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/confidential-compute
Configure virtual networks for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/custom-virtual-networks
Configure Dapr component resiliency in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/dapr-component-resiliency
Configure Dapr components in Azure Container Apps environments https://learn.microsoft.com/en-us/azure/container-apps/dapr-components
Scale Dapr apps with KEDA scalers using Bicep https://learn.microsoft.com/en-us/azure/container-apps/dapr-keda-scaling
Use deployment labels to manage Container Apps revisions https://learn.microsoft.com/en-us/azure/container-apps/deployment-labels
Configure Dapr settings on existing Container Apps https://learn.microsoft.com/en-us/azure/container-apps/enable-dapr
Configure environment variables in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/environment-variables
Map Functions triggers to KEDA scaling in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/functions-keda-mappings
Manage Azure Functions instances in Container Apps via CLI https://learn.microsoft.com/en-us/azure/container-apps/functions-manage
Configure custom KEDA scale rules for Functions on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/functions-scale-rule-override
Configure startup, liveness, and readiness probes in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/health-probes
Configure environment-level ingress for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/ingress-environment-configuration
Configure Java APM agent with init containers in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-application-performance-management-config
Configure Java build environment variables in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-build-environment-variables
Access logs for managed Java components in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-component-logs
Enable Java-optimized features in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-feature-switch
Enable and use Java metrics in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-metrics
Configure networking for Azure Container Apps environments https://learn.microsoft.com/en-us/azure/container-apps/networking
Configure planned maintenance windows for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/planned-maintenance
Configure premium ingress for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/premium-ingress
Configure private endpoints and DNS for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/private-endpoints-with-dns
Configure and manage Container Apps revisions https://learn.microsoft.com/en-us/azure/container-apps/revisions-manage
Configure custom domains with rule-based routing https://learn.microsoft.com/en-us/azure/container-apps/rule-based-routing-custom-domain
Define Azure Container Apps sandbox groups with Bicep https://learn.microsoft.com/en-us/azure/container-apps/sandboxes-quickstart-bicep
Configure service discovery resiliency policies https://learn.microsoft.com/en-us/azure/container-apps/service-discovery-resiliency
Enable session affinity (sticky sessions) in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/sticky-sessions
Configure storage mounts for Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/storage-mounts
Create Azure Files volume mounts in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/storage-mounts-azure-files
Configure traffic splitting across Container Apps revisions https://learn.microsoft.com/en-us/azure/container-apps/traffic-splitting
Configure VNet integration for Azure Container Apps environments https://learn.microsoft.com/en-us/azure/container-apps/vnet-custom
Configure Container Apps workload profiles with Azure CLI https://learn.microsoft.com/en-us/azure/container-apps/workload-profiles-manage-cli
Manage workload profiles in portal for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/workload-profiles-manage-portal

Integrations & Coding Patterns

Topic URL
Implement direct microservice calls in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/communicate-between-microservices
Connect Azure Container Apps using built-in service discovery https://learn.microsoft.com/en-us/azure/container-apps/connect-apps
Create Dapr components for Azure services in portal https://learn.microsoft.com/en-us/azure/container-apps/dapr-component-connection
Use Azure Functions Dapr extension in Container Apps https://learn.microsoft.com/en-us/azure/container-apps/dapr-functions-extension
Expose private Azure Container Apps via Front Door Premium https://learn.microsoft.com/en-us/azure/container-apps/front-door-custom-virtual-network-private-link
Integrate Azure Container Apps with Front Door via Private Link https://learn.microsoft.com/en-us/azure/container-apps/how-to-integrate-with-azure-front-door
Integrate Admin for Spring with Eureka on Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-admin-eureka-integration
Connect Azure Container Apps to managed Config Server for Spring https://learn.microsoft.com/en-us/azure/container-apps/java-config-server
Use managed Gateway for Spring with Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/java-gateway-for-spring
Configure OpenTelemetry agents for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/opentelemetry-agents
Export Container Apps telemetry to Datadog via OpenTelemetry https://learn.microsoft.com/en-us/azure/container-apps/opentelemetry-export-datadog
Configure OpenTelemetry export to Dynatrace for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/opentelemetry-export-dynatrace
Configure OpenTelemetry export to Elastic for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/opentelemetry-export-elastic
Configure OpenTelemetry export to New Relic for Container Apps https://learn.microsoft.com/en-us/azure/container-apps/opentelemetry-export-new-relic
Use Python SDK to manage Container Apps sandboxes https://learn.microsoft.com/en-us/azure/container-apps/sandboxes-quickstart-python-sdk
Integrate AutoGen code interpreter sessions with Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-autogen
Use Azure Container Apps code interpreter sessions with LangChain https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-langchain
Execute JavaScript via Azure Container Apps dynamic sessions https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-nodejs
Use Semantic Kernel code interpreter sessions on Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-semantic-kernel
Run shell commands using Azure Container Apps session pools https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-shell
Use platform-managed MCP with dynamic shell sessions in Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/sessions-tutorial-shell-mcp

Deployment

Topic URL
Automate Container Apps revisions with Azure Pipelines https://learn.microsoft.com/en-us/azure/container-apps/azure-pipelines
Deploy Docker Compose agents to Azure Container Apps https://learn.microsoft.com/en-us/azure/container-apps/compose-agent
Automate Container Apps revisions with GitHub Actions https://learn.microsoft.com/en-us/azure/container-apps/github-actions
Generate Container Apps GitHub Actions via Azure CLI https://learn.microsoft.com/en-us/azure/container-apps/github-actions-cli
Migrate Container Apps logging from Log Analytics to Azure Monitor https://learn.microsoft.com/en-us/azure/container-apps/migrate-logs-azure-monitor

Related skills

azure-diagnosticsmicrosoft608KDebug Azure production issues on Azure using AppLens, Azure Monitor, resource health, and safe triage. WHEN: debug production issues, troubleshoot app service, app service high CPU, app service deployment failure, troubleshoot container apps, troubleshoot functions, troubleshoot AKS, VM RDP, Linux SSH, VM black screen, can't connect to VM, reset VM password, NSG or firewall blocking, kubectl cannot connect, kube-system/CoreDNS failures, pod pending, crashloop, node not ready, upgrade failures, aazure-preparemicrosoft608KPrepare azd-based Azure projects for deployment: generates azure.yaml, infrastructure (Bicep/Terraform), and Dockerfiles for the Azure Developer CLI (azd) workflow. USE ONLY when the user explicitly wants to use azd as the deployment tool, or the project already has an azure.yaml file. DO NOT USE FOR: non-azd deployments, Python App Service code-only deploys (use python-appservice-deploy), or cross-cloud migration (use azure-cloud-migrate). WHEN: prepare app for azd, create azure.yaml, set up azazure-aimicrosoft608KUse for Azure AI: Search, Speech, OpenAI, Document Intelligence. Helps with search, vector/hybrid search, speech-to-text, text-to-speech, transcription, OCR. WHEN: AI Search, query search, vector search, hybrid search, semantic search, speech-to-text, text-to-speech, transcribe, OCR, convert text to speech.azure-deploymicrosoft607KExecute Azure deployments for ALREADY-PREPARED applications that have existing .azure/deployment-plan.md and infrastructure files. DO NOT use this skill when the user asks to CREATE a new application — use azure-prepare instead. This skill runs azd up, azd deploy, terraform apply, and az deployment commands with built-in error recovery. Requires .azure/deployment-plan.md from azure-prepare and validated status from azure-validate. WHEN: \"run azd up\", \"run azd deploy\", \"execute deployment\",

Search skills and MCP servers

Fuzzy search across 23,137 skills and servers