Deploy and register in AMC
Push the image, run it as a container with secrets and volumes, and register its endpoint in AMC.
The generated README targets Azure Container Apps. Any host that runs a container and exposes HTTPS works, as long as AMC can reach the endpoint.
Build and push
# From the repo root
docker build \
-f azurefoundry_report_generator_skills/Dockerfile \
-t <registry>.azurecr.io/a2a-report-generator-skills-agent:$(date +%Y%m%d-%H%M%S) \
.
docker push <registry>.azurecr.io/a2a-report-generator-skills-agent:<tag>The generated README tags each build with a timestamp.
Set credentials as secrets
az containerapp secret set \
--name report-generator-skills-agent-uami --resource-group <resource-group> \
--secrets anthropic-api-key=<your-anthropic-api-key>
az containerapp update \
--name report-generator-skills-agent-uami --resource-group <resource-group> \
--set-env-vars ANTHROPIC_API_KEY=secretref:anthropic-api-keyFor Foundry credentials, also set CLAUDE_CODE_USE_FOUNDRY=1, ANTHROPIC_FOUNDRY_RESOURCE, and ANTHROPIC_FOUNDRY_API_KEY. See Configuration and environment.
Mount volumes the skill needs
Without a mount, anything the skill writes is lost when the container restarts. Register an Azure Files share with the Container Apps environment, then attach it at the path the Dockerfile expects (/outputs, or /mnt/<name> for a token directory).
az containerapp env storage set \
--name <environment-name> --resource-group <resource-group> \
--storage-name report-outputs \
--azure-file-account-name <storage-account> \
--azure-file-account-key <storage-account-key> \
--azure-file-share-name report-outputs \
--access-mode ReadWriteThen add a volumeMounts entry with mountPath: /outputs to the container app. Azure Files suits outputs under 100 MB; for larger files or many files, use blob storage.
Register in AMC
- On Agents, select Register.
- Enter a Name, choose the Kind (Workflow or Agent), choose the Flight Director / custom adapter, and pick a Department.
- Check This resource uses the AMC SDK (no path segments required).
- Enter the Endpoint URL: the container's base URL, for example
https://<your-agent>.example.com. - Under Authentication, choose API key or Managed Identity (same tenant).
- Select Register. AMC probes the endpoint and reports the result.
Full registration detail, including input contracts and declared steps, is in Register your agent.
What the registration probe checks
AMC makes one GET <endpoint>/health call with a 5-second timeout, presenting the credential you chose.
| Response | AMC reports |
|---|---|
| Any 2xx | Healthy |
| 401 or 403 | Access not granted |
| Any other status, a timeout, or a connection failure | Unreachable |
The endpoint must be http or https, and the probe does not follow redirects, so register the final URL. Managed identity with a self-hosted endpoint needs all of: a Tenant Admin registering it, an https endpoint, an api:// resource scope, and the host pre-approved in the installation's SelfHostedManagedIdentityTargets list. That list is empty by default, so a default install refuses it. Use an API key unless your installation has approved the host.
Related
Last updated 2026-10-21