我有一个使用 Azure 容器注册表的 AppService。
docker 镜像由管道构建,并通过 Azure Release 中的“Docker 推送”任务推送。
我正在使用语义版本控制,我将版本放入 BuildNumber 和图像名称中。
我可以在 DeploymentCenter 中看到我的图像以及迄今为止推送的所有标签。
但是,每当我在 AZ DevOps 中创建 Release 时,它都不会自动部署到 AppService。 我必须转到部署中心,选择最新的标签,然后再次重新部署(重新启动应用似乎不起作用,但我不能 100% 确定)。
无论如何,我希望在 DevOps 中发布成功时更新 AppService 并自动运行最新的映像。
对 ACR 的 Docker push
任务可以实现吗?
另外,我想知道 - 我选中了“包括最新标签”复选框,但“最新”标签在部署中心的标签下拉列表中不可用。这是为什么?
答案 0 :(得分:1)
Docker 推送任务到 ACR 是否可能?
当然,是的。但是您需要知道的是,App Service 的持续部署只会触发一个无法更改的标签。通常,我们使用特定的标签latest
。所以你需要一直创建带有标签 latest
的镜像,不要在 DevOps 中使用默认标签 $(Build.BuildId)
。
我选中了“包括最新标签”复选框,但“最新”标签 在部署中心的标签下拉列表中不可用。为什么是 那个?
我对 DevOps 不熟悉,但我认为 include latest tag
表示最新的 Build.BuildId
,而不是某个特定标签,因此每次创建映像并推送时它都会更改。它不适用于应用服务持续部署。