我尝试在Node.js环境中使用Azure SDK for JS创建一个简单的WebApp,但我一直得到响应:
{
"Code":"BadRequest",
"Message":"The parameter LinuxFxVersion has an invalid value.",
"Target":null,
"Details":[
{"Message":"The parameter LinuxFxVersion has an invalid value."},
{"Code":"BadRequest"},
{"ErrorEntity": {
"ExtendedCode":"01007",
"MessageTemplate":"The parameter {0} has an invalid value.",
"Parameters":["LinuxFxVersion"],
"Code":"BadRequest",
"Message":"The parameter LinuxFxVersion has an invalid value."}
}],
"Innererror":null
}
我尝试了各种不同的属性和环境,但都没有成功。我总是得到这个错误。下面是我正在使用的TypeScript代码的一个片段:
const wsmClient: WebSiteManagementClient...
const webAppName: string...
const servicePlanId: string...
const rgName: string...
const envelope: Site = {
name: webAppName,
location: 'westus2',
kind: 'app,linux',
serverFarmId: servicePlanId,
siteConfig: {
linuxFxVersion: 'JAVA|11-java11'
}
};
const appResp = await wsmClient.webApps.createOrUpdate(
rgName,
webAppName,
envelope
);
我哪里做错了?
4条答案
按热度按时间unhi4e5o1#
您的应用服务计划不是Linux,实际上是Windows。Windows主机没有参数LinuxFxVersion。
如果我们创建站点时没有将主机显式配置为Linux,则默认情况下将是Windows主机/服务器场/应用程序服务计划。使用{" kind ":" linux "}是不够的。
在Linux中明确定义应用服务计划,并确保
{"reserved": true}
将其设置为Linux主机(参见文档)yiytaume2#
我测试了你的json数据,它导致了你的
properties
。你的json数据没有“properties”属性。如果你想使用json属性创建Web,请检查此Web应用Rest API请求主体:Web应用-创建或更新。正确的格式应类似于以下示例:
xtfmy6hx3#
@imwenyz回答帮了我。
我正在作为Azure DevOps管道运行,它有AzureWebApp@1任务。我在Azure上配置的应用服务是基于Windows的。
我在此任务中遇到如下错误。
因此,我不得不对任务进行如下修改。
基本上,如您所见,将appType从webAppLinux更改为webApp
qnakjoqk4#
我在使用Terraform部署Web应用程序时遇到了类似的问题。
在我的例子中,docker_image_tag版本没有被正确填充。在提供正确的值之后,Terraform成功部署。