SuperAPI AI 工具集

writing-bicep-templates

部署与运维

查看项目

更新于 10-16 00:30

技能介绍

用途:为 Azure 基础设施提供统一的 Bicep 编码规范,用于编写或修改 Bicep 文件、配置 Container Apps、设置托管标识与 RBAC。

主要能力: 命名:使用 uniqueString() 生成 resourceToken,如 name: '${abbrs.appContainerApps}web-${token}';ACR 仅限字母数字,格式 cr${resourceToken}。 参数:始终添加 @description(),受限取值用 @allowed()。 输出:暴露容器应用名、Web 端点、标识 principalId 等关键标识供 azd 与其它模块使用。 托管标识:使用用户分配 MI 处理 ACR 拉取与 OBO,避免循环依赖;在基础设施模块中创建,先于 Container App 提供 principalId。挂载方式为 identity: { type: 'UserAssigned', userAssignedIdentities: { '${miId}': {} } };ACR 拉取用 registries: [{ server: acr.loginServer, identity: miId }]。 RBAC:用 guid() 生成名称并指定 principalType。 Container Apps 关键设置:系统标识、缩容到零、仅 HTTPS。 ACR 拉取:使用用户分配 MI,不用管理员凭据或密钥。

验证命令: az bicep build --file main.bicep az deployment group what-if --template-file main.bicep

模块层级:main.bicep(订阅范围)下含资源组、main-infrastructure.bicep(ACR、Container Apps 环境、Log Analytics、用户分配 MI)、entra-app.bicep(SPA 应用及带 FIC 的条件 OBO 后端应用与管理员同意)、main-app.bicep(基于 MI 拉取 ACR 的 Container App)与 RBAC(通过 postprovision CLI 授予 Cognitive Services User 角色)。

Container App 配置示例要点:targetPort 8080、allowInsecure false、minReplicas 0、maxReplicas 3、cpu json('0.5')、memory '1Gi'。

限制:本资料为该仓库的项目特定规范,未提供其它环境、版本兼容性、收费或价格信息。