【计算机工具类-CI和CD工具Skills】azd-deployment 技能

【计算机工具类-CI和CD工具Skills】azd-deployment 技能
将容器化前端后端应用程序部署到Azure Container Apps,具有远程构建、托管身份和幂等基础设施。技能概述azd-deployment 技能提供了将容器化前端后端应用程序部署到Azure Container Apps的完整指南。它支持远程构建、托管身份和幂等基础设施,简化了Azure上的容器应用部署流程。下载地址:agentic-awesome-skills/skills/azd-deployment at main · sickn33/agentic-awesome-skills · GitHub主要功能快速部署: 使用azd up一键部署,自动配置基础设施容器化支持: 支持前端和后端容器的远程构建托管身份: 使用Azure托管身份进行安全认证幂等部署: Bicep声明式配置确保幂等性环境管理: 支持多环境(dev、staging、prod)管理钩子系统: 支持预部署、后部署等自定义钩子快速开始# Initialize and deployazd auth loginazd init # Creates azure.yaml and .azure/ folderazd env new # Create environment (dev, staging, prod)azd up # Provision infra build deploy核心文件结构project/├── azure.yaml # azd service definitions hooks├── infra/│ ├── main.bicep # Root infrastructure module│ ├── main.parameters.json # Parameter injection from env vars│ └── modules/│ ├── container-apps-environment.bicep│ └── container-app.bicep├── .azure/│ ├── config.json # Default environment pointer│ └── environment/│ ├── .env # Environment-specific values (azd-managed)│ └── config.json # Environment metadata└── src/├── frontend/Dockerfile└── backend/Dockerfileazure.yaml配置最小配置name: azd-deploymentservices:backend:project: ./src/backendlanguage: pythonhost: containerappdocker:path: ./DockerfileremoteBuild: true完整配置with钩子name: azd-deploymentmetadata:template: my-project1.0.0infra:provider: biceppath: ./infraazure:location: eastus2services:frontend:project: ./src/frontendlanguage: tshost: containerappdocker:path: ./Dockerfilecontext: .remoteBuild: truebackend:project: ./src/backendlanguage: pythonhost: containerappdocker:path: ./Dockerfilecontext: .remoteBuild: truehooks:preprovision:shell: shrun: |echo Before provisioning...postprovision:shell: shrun: |echo After provisioning - set up RBAC, etc.postdeploy:shell: shrun: |echo Frontend: ${SERVICE_FRONTEND_URI}echo Backend: ${SERVICE_BACKEND_URI}关键azure.yaml选项选项描述remoteBuild: true在Azure Container Registry中构建镜像(推荐)context: .相对于项目路径的Docker构建上下文host: containerapp部署到Azure Container Appsinfra.provider: bicep使用Bicep进行基础设施配置环境变量流三级配置本地.env: 仅用于本地开发.azure//.env: azd管理,从Bicep输出自动填充main.parameters.json: 将环境变量映射到Bicep参数参数注入模式{parameters: {environmentName: {value: ${AZURE_ENV_NAME}},location: {value: ${AZURE_LOCATIONeastus2}},azureOpenAiEndpoint: {value: ${AZURE_OPENAI_ENDPOINT}}}}幂等部署为什么azd up是幂等的:Bicep是声明式的: 资源协调到所需状态远程构建唯一标记: 镜像标记包含部署时间戳ACR重用层: 仅上传更改的层最佳实践使用remoteBuild: true在Azure中构建镜像使用托管身份而不是连接字符串为每个环境创建单独的azd环境使用钩子保存和恢复自定义配置将.azure/文件夹添加到.gitignore注意事项仅在任务明确匹配上述范围时使用此技能不要将输出作为环境特定验证、测试或专家审查的替代品如果缺少所需的输入、权限、安全边界或成功标准,请停止并请求澄清

最新新闻

日新闻

周新闻

月新闻