You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用New-AzWebApp创建容器化Azure Web App异常问题求助

正确用PowerShell创建与门户效果一致的Docker容器Azure Web App

直接用New-AzWebApp时如果参数不全,会导致容器配置缺失,出现栈信息异常、镜像拉取错误的问题。以下是正确的操作方式:

一、创建时直接完整配置容器参数

创建Web App时,必须同时指定Linux环境、容器镜像地址、注册表凭据等所有必要参数,确保配置一步到位:

# 定义基础变量
$resourceGroupName = "你的资源组名"
$appServicePlanName = "你的Linux App Service Plan名"
$webAppName = "你的Web App名称"
$containerImage = "xxx.azurecr.io/your-image:tag" # 完整镜像地址
$registryUrl = "https://xxx.azurecr.io" # 容器注册表地址
$registryUser = "注册表用户名"
$registryPassword = "注册表访问密码"

# 创建Web App并配置容器
New-AzWebApp -ResourceGroupName $resourceGroupName `
    -Name $webAppName `
    -AppServicePlan $appServicePlanName `
    -ContainerImageName $containerImage `
    -ContainerRegistryUrl $registryUrl `
    -ContainerRegistryUser $registryUser `
    -ContainerRegistryPassword $registryPassword `
    -Linux

关键注意点:

  • 必须加-Linux参数,明确指定是Linux容器环境,否则会默认创建Windows Web App,导致栈信息异常
  • ContainerImageName要填完整的镜像路径(含注册表地址、镜像名、标签)
  • 注册表的URL、用户名、密码必须准确,否则无法拉取镜像

二、修复已创建的异常Web App

如果已经用错误方式创建了Web App,不要仅修改linuxFxVersion,需用Set-AzWebApp完整更新容器配置:

Set-AzWebApp -ResourceGroupName $resourceGroupName `
    -Name $webAppName `
    -ContainerImageName $containerImage `
    -ContainerRegistryUrl $registryUrl `
    -ContainerRegistryUser $registryUser `
    -ContainerRegistryPassword $registryPassword

三、验证配置是否正确

执行以下命令检查Web App的容器配置:

Get-AzWebApp -ResourceGroupName $resourceGroupName -Name $webAppName | 
    Select-Object -ExpandProperty SiteConfig | 
    Select-Object LinuxFxVersion, ContainerRegistry, ContainerImageName

正常输出中,LinuxFxVersion格式应为DOCKER|你的完整镜像地址,且ContainerRegistry和ContainerImageName与你指定的一致。

问题根源

之前用Set-AzResource仅修改linuxFxVersion,只是更新了UI显示的栈信息,但没有同步设置容器拉取所需的注册表凭据和镜像参数,导致Web App仍使用旧配置拉取镜像。而Azure CLI的az webapp create会自动将所有容器相关参数完整写入站点配置,因此可以正常工作。

内容的提问来源于stack exchange,提问作者Patrick

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.18 14:12:44