【问题标题】:Azure App Service Continuous Deployment Webhook doesn't workAzure 应用服务持续部署 Webhook 不起作用
【发布时间】:2019-07-09 20:48:54
【问题描述】:

(我已经asked in the Microsoft Forum,但没有得到答复。)

我有一个应用服务,它使用启用了持续部署的私有注册表。该应用程序运行良好,但持续部署的 Webhook URL 不起作用。

这是对 webhook 的 HTTP GET 请求的输出:

$ curl https://\$MySiteName:SomeLongPassword@mysite.scm.azurewebsites.net/docker/hook
"No route registered for '/docker/hook'"

Microsoft 论坛中的某个人告诉我尝试 POST 请求,因此输出如下:

$ curl -X POST https://\$MySiteName:SomeLongPassword@mysite.scm.azurewebsites.net/docker/hook
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN""http://www.w3.org/TR/html4/strict.dtd">
<HTML><HEAD><TITLE>Length Required</TITLE>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=us-ascii"></HEAD>
<BODY><h2>Length Required</h2>
<hr><p>HTTP Error 411. The request must be chunked or have a content length.</p>
</BODY></HTML>

我在 Microsoft Azure 文档中的任何地方都没有找到如何使用 webhook。

【问题讨论】:

  • 这能回答你的问题吗? How to trigger manually container refresh
  • @juan 看起来这与我最终得到的解决方案相同,所以从技术上讲,它确实回答了我的问题,我只是希望我找到了那个问题。

标签: azure docker webhooks continuous-deployment azure-web-app-service


【解决方案1】:

经过更多搜索,我找到了this answer

答案建议执行以下操作:

curl https://\$MySiteName:SomeLongPassword@mysite.scm.azurewebsites.net/docker/hook -H "" -d ""

不知道为什么会这样,我希望 Azure 文档中有一些内容。

【讨论】:

  • 它所做的是调用(通过 http 请求)一个 webhook,告诉 Azure “某事”已经发生(例如:一个新图像已准备好),以便 Azure 可以拉取它并运行另一个容器
  • 这是可行的,因为使用 curl 标志 -d (-data) 意味着 HTTP 方法 POST,这是此 webhook URL 允许的唯一方法
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2014-12-15
  • 2019-01-19
  • 2012-08-17
  • 1970-01-01
  • 2019-09-11
  • 1970-01-01
  • 2018-11-16
相关资源
最近更新 更多