如何在Azure App Service企业订阅环境中成功部署应用?
解决Azure App Service企业订阅部署问题
我来帮你搞定这个部署难题,咱们先直接上能成功的命令,再拆解之前的错误原因:
最终可行的部署命令
你需要指定所有必要的参数,包括计划所在的区域,因为az webapp up会默认用本地CLI的位置配置,而你的现有计划在germanywestcentral,所以必须明确指定:
az webapp up --name MyAppName --resource-group MyCorporateGroup --subscription MyCorporateSubscription --plan MyCorporatePlanForAppService --location germanywestcentral
为什么之前的命令会报错?
咱们逐个分析:
- 第一个错误:
az webapp up会读取本地Azure CLI保存的默认配置(比如你之前个人订阅留下的默认资源组MyPrivategroup),哪怕你已经切换到企业订阅,它还是优先用旧的默认值,导致和现有App Service的资源组不匹配。 - 第二个错误:当你指定了资源组和订阅但没指定计划时,
az webapp up会自动生成一个格式为<resource-group>_0的计划名,而你的App Service已经在MyCorporatePlanForAppService计划里,名字对不上就报错了。 - 第三个错误:你指定了正确的计划名,但本地CLI的默认位置是
centralus,az webapp up默认会尝试在这个位置创建计划(哪怕计划已经存在于其他区域),所以触发了“同名资源不能在不同区域创建”的错误。
后续避免同类问题的建议
为了以后部署更顺畅,你可以重置本地CLI的默认配置,适配企业订阅的环境:
- 清除旧的默认资源组:
az configure --defaults group= - 设置企业订阅为默认:
az account set --subscription MyCorporateSubscription - 设置默认区域为企业常用的
germanywestcentral:az configure --defaults location=germanywestcentral
内容的提问来源于stack exchange,提问作者Victoria
相关产品推荐
相关产品推荐

