Azure AppService从容器注册表标记选择进行连续部署

Azure AppService从容器注册表标记选择进行连续部署,azure,docker,azure-web-app-service,azure-container-registry,Azure,Docker,Azure Web App Service,Azure Container Registry,我有一个使用Azure容器注册表的AppService。 docker映像由管道构建,并在Azure版本中通过“docker推送”任务推送。 我正在使用语义版本控制,我将版本放入BuildNumber和图像名称中 我可以在DeploymentCenter中看到我的图像,以及迄今为止推送的所有标记 但是,每当我在AZ DevOps中创建一个发行版时,它不会自动部署到AppService。 我必须去DeploymentCenter,选择最新的标签,然后重新部署(重新启动应用程序似乎不起作用,但不

我有一个使用Azure容器注册表的AppService。
docker映像由管道构建,并在Azure版本中通过“docker推送”任务推送。
我正在使用语义版本控制,我将版本放入BuildNumber和图像名称中

我可以在DeploymentCenter中看到我的图像,以及迄今为止推送的所有标记

但是,每当我在AZ DevOps中创建一个发行版时,它不会自动部署到AppService。 我必须去DeploymentCenter,选择最新的标签,然后重新部署(重新启动应用程序似乎不起作用,但不是100%确定)

在任何情况下,我希望AppService在DevOps中成功发布后自动更新并运行最新映像。 通过将
Docker push
任务推送到ACR,这是否可行

另外,我想知道-我选中了“包含最新标签”复选框,但“最新”标签在部署中心的标签下拉列表中不可用。为什么呢

Docker推送任务到ACR是否可能

当然,是的。但你需要知道的是,应用服务的持续部署只会触发一个标签,它不能改变。通常,我们使用特定的标签
latest
。因此,您需要始终使用标签
latest
创建图像,不要在DevOps中使用默认标签
$(Build.BuildId)

我勾选了“包含最新标签”复选框,但是“最新”标签 在部署中心的标记下拉列表中不可用。为什么 那个


我不熟悉DevOps,但我认为
include latest标记
意味着最新的
Build.BuildId
,而不是一个特定的标记,因此每次创建图像并推送它时它都会改变。对于应用程序服务的连续部署来说,这是行不通的。

谢谢-这听起来有点奇怪,似乎有违图像标记的良好做法…@Bartosz但对于应用程序服务来说,就是这样。@Bartosz关于这个问题有什么更新吗?它解决了你的问题吗?我没有更新,谢谢。我对你的答案投了赞成票,如果没有人有更好的想法,我会接受它作为“答案”。@Bartosz好的,如果你对这个问题有更多问题,我很乐意帮助你。