更新容器映像时,还原了Azure App Service应用程序设置

时间:2019-04-26 09:45:32

标签: azure-web-sites azure-application-settings

我在Azure中托管了一个Web应用程序,其中包含一个Linux容器,图像存储在Azure容器注册表中。 该Web应用程序运行正常,并且我配置了几个应用程序设置。设置之一是:WEBSITES_ENABLE_APP_SERVICE_STORAGE = TRUE

但是,当我更新容器映像时,此特定的应用程序设置恢复为false。

我尝试删除设置并通过门户网站和az cli再次添加它,但是在更新后保持TRUE值仍然没有成功。在“诊断和解决问题”下->重新启动Web App->我可以看到以下消息:随着应用程序环境变量的更改,您的应用程序已回收。这很可能是由于应用设置更新或交换操作引起的。 但是没有任何解释为什么它会恢复为假。

用于更新容器映像的命令

az webapp config container set \
--docker-custom-image-name "DOCKER|xx.azurecr.io/imagename:tag" \
--docker-registry-server-password topsecret \
--docker-registry-server-url https://index.docker.io \
--docker-registry-server-user username \
--name MyWebApp \
--resource-group MyResourceGroup

命令成功,并返回以下内容:

  {
    "name": "WEBSITES_ENABLE_APP_SERVICE_STORAGE",
    "slotSetting": false,
    "value": "false"
  },

当我用新图像更新时,我希望应用程序设置WEBSITES_ENABLE_APP_SERVICE_STORAGE = TRUE,而不是像现在那样恢复为false。我没有使用插槽设置,但尝试将value和slotSettingting都设置为True,但仍然没有更改。

1 个答案:

答案 0 :(得分:0)

解决此问题的方法如下: az webapp config container set突击队可以选择将容器的存储设置为True(默认为False)

需要添加到命令中的参数是--enable-app-service-storage -t

尝试并验证它是否有效,现在输出如下:

  {
    "name": "WEBSITES_ENABLE_APP_SERVICE_STORAGE",
    "slotSetting": false,
    "value": "true"
  },

如果未提供该参数,该命令将覆盖您当前的应用设置。

https://docs.microsoft.com/en-us/cli/azure/webapp/config/container?view=azure-cli-latest