0

所以我正在尝试为我的网络应用程序设置继续部署。Web 应用程序配置为使用 Azure 容器注册表中的 docker 映像:

在此处输入图像描述

它在 Azure 容器注册表中创建了一个 webhook,我将其更新为针对任何图像标记触发:

在此处输入图像描述

每当我将新图像推送到注册表时,都会成功触发 webhook。但是,Web 应用程序会忽略 webhook 发送的标记名称,并始终使用它来部署映像,latest因为它是在 Web 应用程序配置中定义的,无法更改。

请求 webhook 的负载:

{
  "id": "6be524c6-xxxx-xxxx-xxxx-afb4fa79144b",
  "timestamp": "2019-10-11T05:00:56.2452112Z",
  "action": "push",
  "target": {
    "mediaType": "application/vnd.docker.distribution.manifest.v2+json",
    "size": 1153,
    "digest": "sha256:8076c2616d4a629062aede0b7d2aa0f04d293126e55c7778149b9b8db3111382",
    "length": 1153,
    "repository": "platform-api",
    "tag": "cf2ff96"
  },
  "request": {
    "id": "bf18fce3-xxxx-xxxx-xxxx-aceebbffcfd0",
    "host": "xxxx.azurecr.io",
    "method": "PUT",
    "useragent": "docker/18.09.3 go/go1.10.8 git-commit/774a1f4 kernel/4.15.0-1027-gcp os/linux arch/amd64 UpstreamClient(Docker-Client/18.09.3 \\(linux\\))"
  }
}

回复:

{"OperationId":"690c7748-xxxx-xxxx-xxxx-31f5533e4067","TrackingUrl":"https://xxxx-platform-api.scm.azurewebsites.net/api/logstream?filter=op:690c7748-xxxx-xxxx-xxxx-31f5533e4067,volatile:false"}

容器的日志流:

2019-10-10 22:35:08.451 INFO  - a5fd76166a97 Extracting 2KB / 2KB
2019-10-10 22:35:08.939 INFO  - a5fd76166a97 Pull complete
2019-10-10 22:35:08.983 INFO  -  Digest: sha256:595cb52395b914b82133d67f5e5424075f6325dc4c8be5673db59e09b279c78d
2019-10-10 22:35:09.027 INFO  -  Status: Downloaded newer image for xxxx.azurecr.io/platform-api:latest
2019-10-10 22:35:09.082 INFO  - Pull Image successful, Time taken: 0 Minutes and 6 Seconds
2019-10-10 22:35:09.172 INFO  - Starting container for site
2019-10-10 22:35:09.173 INFO  - docker run -d -p 9758:8080 --name xxxx-platform-api_0_7d8217a9 -e WEBSITES_ENABLE_APP_SERVICE_STORAGE=false -e WEBSITE_SITE_NAME=xxxx-platform-api -e WEBSITE_AUTH_ENABLED=False -e PORT=8080 -e WEBSITE_ROLE_INSTANCE_ID=0 -e WEBSITE_HOSTNAME=xxxx-platform-api.azurewebsites.net -e WEBSITE_INSTANCE_ID=a76a50ba664d5f979a92b87fa96814a39a02ad08ea740b7ba12f9ace3807d7f7 -e HTTP_LOGGING_ENABLED=1 xxxx.azurecr.io/platform-api:latest
2019-10-10 22:35:14.039 INFO  - Initiating warmup request to container xxxx-platform-api_0_7d8217a9 for site xxxx-platform-api
2019-10-10 22:35:16.167 INFO  - Container xxxx-platform-api_0_7d8217a9 for site xxxx-platform-api initialized successfully and is ready to serve requests.

似乎没有办法强制 web 应用部署 web 钩子发送的标签名称

4

1 回答 1

0

其实,你理解的没错。Web App for Container 中的持续部署仅适用于您部署的映像。

您可以为更新图像的操作创建 Webhook,它将按您的意愿工作。但是当使用的图像发生变化时,网络应用程序只会更新。这就是持续部署的工作原理。

于 2019-10-11T06:36:56.530 回答